interfaceRewriteRule
interface RewriteRule
One source-based structural transformation, before any spelling is selected.
Methods§
public function rewrite(TerminalSequence $sequence): TerminalSequencePreserves unaffected occurrences and records the origin of each structural change.
Parameters
$sequence | TerminalSequence |
Returns
Test cases 9§
Test cases that cover or call this symbol, from the coverage report and from the analyzed test sources.
Dedicated tests 1
RewriteRuleTestcalls
Other tests reaching this symbol 8
DerivationTraceTestcallsTokenGeneratorTestcallsLexemeSequenceTestcallsCandidateResolverTestcallsSqlGeneratorTest::testGenerateKeepsRewrittenSourcesReachedWithoutCreditingTheirOutputcallsSqlGeneratorTest::testGenerateReportsOnlyTheLatestRewrittenDerivationcallsSqlGeneratorTest::testGenerateUsesExplicitRulesAndSuppliedParserSemanticscallsTerminalSequenceTestcalls
Relations§
Implemented by 85
- TerminalMappingRule packages/sql-faker/src/Generation/Token/TerminalMappingRule.php:12
- TokenRewriter packages/sql-faker/src/Generation/Token/TokenRewriter.php:12
- AlterDatabaseRule packages/sql-faker/src/MySql/Generation/Rewrite/AlterDatabaseRule.php:15
- AlterEventRule packages/sql-faker/src/MySql/Generation/Rewrite/AlterEventRule.php:15
- OrderByRule packages/sql-faker/src/MySql/Generation/Rewrite/Alter/OrderByRule.php:17
- AutoIncrementRule packages/sql-faker/src/MySql/Generation/Rewrite/Column/AutoIncrementRule.php:17
- FieldLengthRule packages/sql-faker/src/MySql/Generation/Rewrite/Column/FieldLengthRule.php:17
- ConstraintEnforcementRule packages/sql-faker/src/MySql/Generation/Rewrite/ConstraintEnforcementRule.php:15
- ConcatenationRule packages/sql-faker/src/MySql/Generation/Rewrite/Expression/ConcatenationRule.php:17
- ExpressionGroupingRule packages/sql-faker/src/MySql/Generation/Rewrite/Expression/ExpressionGroupingRule.php:15
- QuantifiedComparisonRule packages/sql-faker/src/MySql/Generation/Rewrite/Expression/QuantifiedComparisonRule.php:15
- TableValueConstructorRule packages/sql-faker/src/MySql/Generation/Rewrite/Expression/TableValueConstructorRule.php:16
- FlushExportRule packages/sql-faker/src/MySql/Generation/Rewrite/FlushExportRule.php:15
- GeneratedColumnRule packages/sql-faker/src/MySql/Generation/Rewrite/GeneratedColumnRule.php:15
- InstanceActionRule packages/sql-faker/src/MySql/Generation/Rewrite/InstanceActionRule.php:15
- IntegerContextRule packages/sql-faker/src/MySql/Generation/Rewrite/IntegerContextRule.php:15
- IntoClauseRule packages/sql-faker/src/MySql/Generation/Rewrite/IntoClauseRule.php:18
- LoadSourceCountRule packages/sql-faker/src/MySql/Generation/Rewrite/LoadSourceCountRule.php:15
- HostNameRule packages/sql-faker/src/MySql/Generation/Rewrite/Name/HostNameRule.php:15
- SystemVariableRule packages/sql-faker/src/MySql/Generation/Rewrite/Name/SystemVariableRule.php:15
- UniqueOptionRule packages/sql-faker/src/MySql/Generation/Rewrite/Option/UniqueOptionRule.php:14
- DefinitionRule packages/sql-faker/src/MySql/Generation/Rewrite/Partition/DefinitionRule.php:17
- FieldListRule packages/sql-faker/src/MySql/Generation/Rewrite/Partition/FieldListRule.php:15
- ListValueRule packages/sql-faker/src/MySql/Generation/Rewrite/Partition/ListValueRule.php:18
- ValueArityRule packages/sql-faker/src/MySql/Generation/Rewrite/Partition/ValueArityRule.php:18
- JoinGroupingRule packages/sql-faker/src/MySql/Generation/Rewrite/Query/JoinGroupingRule.php:15
- QueryContextRule packages/sql-faker/src/MySql/Generation/Rewrite/Query/QueryContextRule.php:15
- WindowFrameRule packages/sql-faker/src/MySql/Generation/Rewrite/Query/WindowFrameRule.php:15
- StartRule packages/sql-faker/src/MySql/Generation/Rewrite/Replication/StartRule.php:15
- TablePatternRule packages/sql-faker/src/MySql/Generation/Rewrite/Replication/TablePatternRule.php:15
- RequiredAliasRule packages/sql-faker/src/MySql/Generation/Rewrite/RequiredAliasRule.php:15
- RoleGrantRule packages/sql-faker/src/MySql/Generation/Rewrite/RoleGrantRule.php:16
- LanguageRule packages/sql-faker/src/MySql/Generation/Rewrite/Routine/LanguageRule.php:14
- ReturnRule packages/sql-faker/src/MySql/Generation/Rewrite/Routine/ReturnRule.php:14
- SetNamesRule packages/sql-faker/src/MySql/Generation/Rewrite/SetNamesRule.php:15
- SubqueryContextRule packages/sql-faker/src/MySql/Generation/Rewrite/SubqueryContextRule.php:15
- TransactionCompletionRule packages/sql-faker/src/MySql/Generation/Rewrite/TransactionCompletionRule.php:15
- ConstraintCapabilitiesRule packages/sql-faker/src/PostgreSql/Generation/Rewrite/Column/ConstraintCapabilitiesRule.php:16
- ForeignKeyActionRule packages/sql-faker/src/PostgreSql/Generation/Rewrite/Column/ForeignKeyActionRule.php:15
- IdentityOptionRule packages/sql-faker/src/PostgreSql/Generation/Rewrite/Column/IdentityOptionRule.php:15
- NumericContextRule packages/sql-faker/src/PostgreSql/Generation/Rewrite/Column/NumericContextRule.php:16
- ConstraintAttributesRule packages/sql-faker/src/PostgreSql/Generation/Rewrite/ConstraintAttributesRule.php:15
- CopySourceRule packages/sql-faker/src/PostgreSql/Generation/Rewrite/CopySourceRule.php:15
- ExpressionGroupingRule packages/sql-faker/src/PostgreSql/Generation/Rewrite/Expression/ExpressionGroupingRule.php:15
- FetchWithTiesRule packages/sql-faker/src/PostgreSql/Generation/Rewrite/FetchWithTiesRule.php:16
- GeneratedColumnRule packages/sql-faker/src/PostgreSql/Generation/Rewrite/GeneratedColumnRule.php:15
- HashPartitionBoundRule packages/sql-faker/src/PostgreSql/Generation/Rewrite/HashPartitionBoundRule.php:15
- LimitOffsetRule packages/sql-faker/src/PostgreSql/Generation/Rewrite/LimitOffsetRule.php:15
- LookaheadRule packages/sql-faker/src/PostgreSql/Generation/Rewrite/LookaheadRule.php:16
- AliasRule packages/sql-faker/src/PostgreSql/Generation/Rewrite/Name/AliasRule.php:14
- AnyRelationNameRule packages/sql-faker/src/PostgreSql/Generation/Rewrite/Name/AnyRelationNameRule.php:15
- ColumnNameRule packages/sql-faker/src/PostgreSql/Generation/Rewrite/Name/ColumnNameRule.php:15
- FunctionNameRule packages/sql-faker/src/PostgreSql/Generation/Rewrite/Name/FunctionNameRule.php:17
- IndirectionStarRule packages/sql-faker/src/PostgreSql/Generation/Rewrite/Name/IndirectionStarRule.php:15
- ParserNameRule packages/sql-faker/src/PostgreSql/Generation/Rewrite/Name/ParserNameRule.php:17
- RelationNameRule packages/sql-faker/src/PostgreSql/Generation/Rewrite/Name/RelationNameRule.php:15
- OperatorArgumentsRule packages/sql-faker/src/PostgreSql/Generation/Rewrite/OperatorArgumentsRule.php:15
- UniqueOptionRule packages/sql-faker/src/PostgreSql/Generation/Rewrite/Option/UniqueOptionRule.php:14
- OverlapsArgumentsRule packages/sql-faker/src/PostgreSql/Generation/Rewrite/OverlapsArgumentsRule.php:15
- PublicationObjectRule packages/sql-faker/src/PostgreSql/Generation/Rewrite/PublicationObjectRule.php:15
- IntoClauseRule packages/sql-faker/src/PostgreSql/Generation/Rewrite/Query/IntoClauseRule.php:15
- ParserOptionsRule packages/sql-faker/src/PostgreSql/Generation/Rewrite/Query/ParserOptionsRule.php:16
- SchemaElementsRule packages/sql-faker/src/PostgreSql/Generation/Rewrite/Query/SchemaElementsRule.php:15
- SelectOptionsRule packages/sql-faker/src/PostgreSql/Generation/Rewrite/Query/SelectOptionsRule.php:16
- AggregateArgumentRule packages/sql-faker/src/PostgreSql/Generation/Rewrite/Routine/AggregateArgumentRule.php:16
- JsonOptionsRule packages/sql-faker/src/PostgreSql/Generation/Rewrite/Routine/JsonOptionsRule.php:15
- JsonTablePathRule packages/sql-faker/src/PostgreSql/Generation/Rewrite/Routine/JsonTablePathRule.php:15
- RangeFunctionOrdinalityRule packages/sql-faker/src/PostgreSql/Generation/Rewrite/Routine/RangeFunctionOrdinalityRule.php:15
- SubstringRule packages/sql-faker/src/PostgreSql/Generation/Rewrite/Routine/SubstringRule.php:14
- TableFunctionRule packages/sql-faker/src/PostgreSql/Generation/Rewrite/Routine/TableFunctionRule.php:15
- TypeModifierRule packages/sql-faker/src/PostgreSql/Generation/Rewrite/Routine/TypeModifierRule.php:15
- WithinGroupRule packages/sql-faker/src/PostgreSql/Generation/Rewrite/Routine/WithinGroupRule.php:14
- TimeZoneIntervalRule packages/sql-faker/src/PostgreSql/Generation/Rewrite/TimeZoneIntervalRule.php:15
- WindowFrameRule packages/sql-faker/src/PostgreSql/Generation/Rewrite/WindowFrameRule.php:15
- CompoundSelectRule packages/sql-faker/src/Sqlite/Generation/Rewrite/CompoundSelectRule.php:15
- ExpressionGroupingRule packages/sql-faker/src/Sqlite/Generation/Rewrite/Expression/ExpressionGroupingRule.php:15
- FunctionArgumentRule packages/sql-faker/src/Sqlite/Generation/Rewrite/FunctionArgumentRule.php:16
- GeneratedColumnRule packages/sql-faker/src/Sqlite/Generation/Rewrite/GeneratedColumnRule.php:15
- IdentifierListRule packages/sql-faker/src/Sqlite/Generation/Rewrite/IdentifierListRule.php:15
- JoinRule packages/sql-faker/src/Sqlite/Generation/Rewrite/JoinRule.php:15
- StrictTableRule packages/sql-faker/src/Sqlite/Generation/Rewrite/StrictTableRule.php:15
- TableOptionRule packages/sql-faker/src/Sqlite/Generation/Rewrite/TableOptionRule.php:15
- UpsertSourceRule packages/sql-faker/src/Sqlite/Generation/Rewrite/UpsertSourceRule.php:15
- WindowFrameRule packages/sql-faker/src/Sqlite/Generation/Rewrite/WindowFrameRule.php:15
- WithoutRowidRule packages/sql-faker/src/Sqlite/Generation/Rewrite/WithoutRowidRule.php:15