classAggregateArgumentRule
final class AggregateArgumentRule
implements RewriteRule
Aggregate arguments cannot have output modes; ordered-set direct VARIADIC types need coordinated lists.
Methods§
public function rewrite(TerminalSequence $sequence): TerminalSequenceUses IN for output modes and direct variadic arguments, preserving function modes outside aggregates.
Parameters
$sequence | TerminalSequence |
Returns
Test cases 8
AggregateArgumentRuleTest::testRewriteKeepsOrdinaryFunctionModesAndNormalizesAggregateInputModescallsAggregateArgumentRuleTest::testRewriteKeepsOrdinaryFunctionModesAndNormalizesAggregateInputModes#0coversAggregateArgumentRuleTest::testRewriteKeepsOrdinaryFunctionModesAndNormalizesAggregateInputModes#1coversAggregateArgumentRuleTest::testRewriteKeepsOrdinaryFunctionModesAndNormalizesAggregateInputModes#2coversAggregateArgumentRuleTest::testRewriteKeepsOrdinaryFunctionModesAndNormalizesAggregateInputModes#3coversAggregateArgumentRuleTest::testRewriteKeepsOrdinaryFunctionModesAndNormalizesAggregateInputModes#4coversAggregateArgumentRuleTest::testRewriteKeepsOrdinaryFunctionModesAndNormalizesAggregateInputModes#5coversAggregateArgumentRuleTest::testRewriteKeepsOrdinaryFunctionModesAndNormalizesAggregateInputModes#6covers
Calls 5
- method-call TerminalSequence::occurrences() line 24
- method-call TerminalSequence::range() line 25
- function-call
array_sliceline 29 - method-call TerminalSequence::names() line 29
- function-call
in_arrayline 30
Test cases 14§
Test cases that cover or call this symbol, from the coverage report and from the analyzed test sources.
Dedicated tests 8
AggregateArgumentRuleTest::testRewriteKeepsOrdinaryFunctionModesAndNormalizesAggregateInputModescallsAggregateArgumentRuleTest::testRewriteKeepsOrdinaryFunctionModesAndNormalizesAggregateInputModes#0coversAggregateArgumentRuleTest::testRewriteKeepsOrdinaryFunctionModesAndNormalizesAggregateInputModes#1coversAggregateArgumentRuleTest::testRewriteKeepsOrdinaryFunctionModesAndNormalizesAggregateInputModes#2coversAggregateArgumentRuleTest::testRewriteKeepsOrdinaryFunctionModesAndNormalizesAggregateInputModes#3coversAggregateArgumentRuleTest::testRewriteKeepsOrdinaryFunctionModesAndNormalizesAggregateInputModes#4coversAggregateArgumentRuleTest::testRewriteKeepsOrdinaryFunctionModesAndNormalizesAggregateInputModes#5coversAggregateArgumentRuleTest::testRewriteKeepsOrdinaryFunctionModesAndNormalizesAggregateInputModes#6covers
Other tests reaching this symbol 6
MySqlProviderTestcallsGenerationContextTestcallsRewriteDefinitionsTestcallsPostgreSqlProviderTestcallsSqlGeneratorFactoryTestcallsSqliteProviderTestcalls