classTerminalMappingRule
final class TerminalMappingRule
implements RewriteRule
Maps a direct terminal child of one grammar production to a declared contextual domain.
Methods§
public function __construct(
private string $scope,
private string $from,
private string $to,
private string $source,
)Binds a structural match and its source-defined replacement independently of dialect dispatch.
Parameters
$scope | string | |
$from | string | |
$to | string | |
$source | string |
Test cases 1
public function rewrite(TerminalSequence $sequence): TerminalSequenceReplaces only direct children; identical terminals inside nested expressions remain unchanged.
Parameters
$sequence | TerminalSequence |
Returns
Test cases 2
Calls 1
- function-call
countline 32
Private surface 4§
Implementation details, listed for orientation only.
private string $scopeprivate string $fromprivate string $toprivate string $sourceTest cases 14§
Test cases that cover or call this symbol, from the coverage report and from the analyzed test sources.
Dedicated tests 1
Other tests reaching this symbol 13
PlanBuilderTest::testBuildUsesTheSameContextualRewriteAndPinsItsCompleteCandidatecallsRewriteRuleTest::testRewriteContractRetainsNonMatchingInputcallsTokenRewriterTest::testRewriteAppliesEachRuleOnceInOrderAndPreservesTheOriginalcallsGenerationContextTestcallsRewriteDefinitionsTestcallsMySqlProviderTestcallsGenerationContextTestcallsRewriteDefinitionsTestcallsPostgreSqlProviderTestcallsSqlGeneratorFactoryTestcallsGenerationContextTestcallsRewriteDefinitionsTestcallsSqliteProviderTestcalls
Relations§
Instantiated in 7
- new SqlFaker\MySql\Generation\Rewrite\RewriteDefinitions::create() packages/sql-faker/src/MySql/Generation/Rewrite/RewriteDefinitions.php:48
- new SqlFaker\MySql\Generation\Rewrite\RewriteDefinitions::create() packages/sql-faker/src/MySql/Generation/Rewrite/RewriteDefinitions.php:49
- new SqlFaker\MySql\Generation\Rewrite\RewriteDefinitions::create() packages/sql-faker/src/MySql/Generation/Rewrite/RewriteDefinitions.php:59
- new SqlFaker\PostgreSql\Generation\Rewrite\RewriteDefinitions::create() packages/sql-faker/src/PostgreSql/Generation/Rewrite/RewriteDefinitions.php:80
- new SqlFaker\PostgreSql\Generation\Rewrite\RewriteDefinitions::create() packages/sql-faker/src/PostgreSql/Generation/Rewrite/RewriteDefinitions.php:81
- new SqlFaker\PostgreSql\Generation\Rewrite\RewriteDefinitions::create() packages/sql-faker/src/PostgreSql/Generation/Rewrite/RewriteDefinitions.php:82
- new SqlFaker\Sqlite\Generation\Rewrite\RewriteDefinitions::create() packages/sql-faker/src/Sqlite/Generation/Rewrite/RewriteDefinitions.php:23