final class ScopedGeneration

Resolves lexical conditions after structural rewriting, retaining ancestor identity for inserted terminals.

Properties§

public TerminalSequence $sequence

Methods§

public function __construct(
    public TerminalSequence $sequence,
    private array<int, array<string, LexemeConstraint>> $bindings = [],
)

Parameters

$sequenceTerminalSequence
$bindingsarray<int, array<string, LexemeConstraint>>
public function constraint(TerminalOccurrence $terminal): ?LexemeConstraint

Finds the nearest applicable lexical scope, including for rewritten terminals.

Parameters

Test cases 1
Called from 1
Calls 1
  • function-call array_reverse line 67

Private surface 1§

Implementation details, listed for orientation only.

private array<int, array<string, LexemeConstraint>> $bindings = []

Test cases 10§

Test cases that cover or call this symbol, from the coverage report and from the analyzed test sources.

Dedicated tests 5
Other tests reaching this symbol 5

Relations§

Instantiated in 1
Type declarations 2