classReturnRule
final class ReturnRule
implements RewriteRule
sql_yacc.yy/sp_proc_stmt_return permits RETURN only in stored functions.
Methods§
public function rewrite(TerminalSequence $sequence): TerminalSequenceEvaluates the retained expression with DO when the enclosing routine cannot return a value.
Parameters
$sequence | TerminalSequence |
Returns
Test cases 10
ReturnRuleTest::testRewriteKeepsReturnsInFunctionsAndEvaluatesExpressionsInOtherRoutinescallsReturnRuleTest::testRewriteKeepsReturnsInFunctionsAndEvaluatesExpressionsInOtherRoutines#0coversReturnRuleTest::testRewriteKeepsReturnsInFunctionsAndEvaluatesExpressionsInOtherRoutines#1coversReturnRuleTest::testRewriteKeepsReturnsInFunctionsAndEvaluatesExpressionsInOtherRoutines#2coversReturnRuleTest::testRewriteKeepsReturnsInFunctionsAndEvaluatesExpressionsInOtherRoutines#3coversReturnRuleTest::testRewriteKeepsReturnsInFunctionsAndEvaluatesExpressionsInOtherRoutines#4coversReturnRuleTest::testRewriteKeepsReturnsInFunctionsAndEvaluatesExpressionsInOtherRoutines#5coversReturnRuleTest::testRewriteKeepsReturnsInFunctionsAndEvaluatesExpressionsInOtherRoutines#6coversReturnRuleTest::testRewriteKeepsReturnsInFunctionsAndEvaluatesExpressionsInOtherRoutines#7coversReturnRuleTest::testRewritePreservesAnEmptyReturnOccurrencecovers and calls
Calls 5
- method-call TerminalSequence::occurrences() line 21
- method-call TerminalSequence::range() line 22
- method-call TerminalSequence::nameAt() line 23
- function-call
array_reverseline 27 - function-call
in_arrayline 31
Test cases 16§
Test cases that cover or call this symbol, from the coverage report and from the analyzed test sources.
Dedicated tests 10
ReturnRuleTest::testRewriteKeepsReturnsInFunctionsAndEvaluatesExpressionsInOtherRoutinescallsReturnRuleTest::testRewriteKeepsReturnsInFunctionsAndEvaluatesExpressionsInOtherRoutines#0coversReturnRuleTest::testRewriteKeepsReturnsInFunctionsAndEvaluatesExpressionsInOtherRoutines#1coversReturnRuleTest::testRewriteKeepsReturnsInFunctionsAndEvaluatesExpressionsInOtherRoutines#2coversReturnRuleTest::testRewriteKeepsReturnsInFunctionsAndEvaluatesExpressionsInOtherRoutines#3coversReturnRuleTest::testRewriteKeepsReturnsInFunctionsAndEvaluatesExpressionsInOtherRoutines#4coversReturnRuleTest::testRewriteKeepsReturnsInFunctionsAndEvaluatesExpressionsInOtherRoutines#5coversReturnRuleTest::testRewriteKeepsReturnsInFunctionsAndEvaluatesExpressionsInOtherRoutines#6coversReturnRuleTest::testRewriteKeepsReturnsInFunctionsAndEvaluatesExpressionsInOtherRoutines#7coversReturnRuleTest::testRewritePreservesAnEmptyReturnOccurrencecovers and calls
Other tests reaching this symbol 6
GenerationContextTestcallsRewriteDefinitionsTestcallsMySqlProviderTestcallsPostgreSqlProviderTestcallsSqlGeneratorFactoryTestcallsSqliteProviderTestcalls