classSubqueryContextRule
final class SubqueryContextRule
implements RewriteRule
PT_subquery and partition contextualization forbid subqueries in these statement expressions.
Methods§
public function rewrite(TerminalSequence $sequence): TerminalSequenceReplaces only the operand containing a forbidden subquery; ordinary SELECT subqueries remain intact.
Parameters
$sequence | TerminalSequence |
Returns
Test cases 8
SubqueryContextRuleTest::testRewriteChangesOnlyTheForbiddenSubqueryOperandcallsSubqueryContextRuleTest::testRewriteChangesOnlyTheForbiddenSubqueryOperand#0coversSubqueryContextRuleTest::testRewriteChangesOnlyTheForbiddenSubqueryOperand#1coversSubqueryContextRuleTest::testRewriteChangesOnlyTheForbiddenSubqueryOperand#2coversSubqueryContextRuleTest::testRewriteChangesOnlyTheForbiddenSubqueryOperand#3coversSubqueryContextRuleTest::testRewriteChangesOnlyTheForbiddenSubqueryOperand#4coversSubqueryContextRuleTest::testRewriteChangesOnlyTheForbiddenSubqueryOperand#5coversSubqueryContextRuleTest::testRewriteChangesOnlyTheForbiddenSubqueryOperand#6covers
Calls 5
- method-call TerminalSequence::occurrences() line 23
- method-call TerminalSequence::range() line 24
- function-call
array_intersectline 29 - function-call
array_searchline 32 - function-call
in_arrayline 34
Test cases 14§
Test cases that cover or call this symbol, from the coverage report and from the analyzed test sources.
Dedicated tests 8
SubqueryContextRuleTest::testRewriteChangesOnlyTheForbiddenSubqueryOperandcallsSubqueryContextRuleTest::testRewriteChangesOnlyTheForbiddenSubqueryOperand#0coversSubqueryContextRuleTest::testRewriteChangesOnlyTheForbiddenSubqueryOperand#1coversSubqueryContextRuleTest::testRewriteChangesOnlyTheForbiddenSubqueryOperand#2coversSubqueryContextRuleTest::testRewriteChangesOnlyTheForbiddenSubqueryOperand#3coversSubqueryContextRuleTest::testRewriteChangesOnlyTheForbiddenSubqueryOperand#4coversSubqueryContextRuleTest::testRewriteChangesOnlyTheForbiddenSubqueryOperand#5coversSubqueryContextRuleTest::testRewriteChangesOnlyTheForbiddenSubqueryOperand#6covers
Other tests reaching this symbol 6
GenerationContextTestcallsRewriteDefinitionsTestcallsMySqlProviderTestcallsPostgreSqlProviderTestcallsSqlGeneratorFactoryTestcallsSqliteProviderTestcalls