| SqlGenerator @visibility root | SqlFaker\Generation | Derives terminals, rewrites structural constraints, and realizes lexemes once.
Dialect definitions supply the syntax and boundary rules; no completed SQL is retried or repaired. |
| ChoiceLexemeGenerator | SqlFaker\Generation\Candidate | The union of every applicable child's candidates; registration order is stable. |
| FixedLexemeGenerator | SqlFaker\Generation\Candidate | A fixed output element, including an explicit empty output when text is empty. |
| IntegerLexemeGenerator | SqlFaker\Generation\Candidate | An unsigned decimal scanner domain whose inclusive bounds do not depend on PHP's integer width. |
| MatchingLexemeGenerator | SqlFaker\Generation\Candidate | Applies its child only when its declared terminal or contextual predicate matches. |
| RegisteredLexemeGenerator | SqlFaker\Generation\Candidate | Supplies spellings from a fixed upstream registration table after explicit handler selection. |
| SequenceLexemeGenerator | SqlFaker\Generation\Candidate | A lazy Cartesian product of child outputs, all realizing the same terminal occurrence. |
| ValueLexemeGenerator | SqlFaker\Generation\Candidate | Constructs lexical values from a domain; only caller-supplied spellings need recognition. |
| VersionCase | SqlFaker\Generation\Candidate | An immutable association of reviewed releases and a shared generator definition. |
| VersionedLexemeGenerator | SqlFaker\Generation\Candidate | Binds one exact release at construction without invoking unselected definitions. |
| ByteChoices @visibility root | SqlFaker\Generation\Choice | Consumes input choices while constructing an immutable generation plan. |
| BytePlanCompiler | SqlFaker\Generation\Choice | Decodes bytes at the plan entry point and returns frozen production and lexical instructions. |
| PlanBuilder | SqlFaker\Generation\Choice | Compiles choices through the production generation pipeline into immutable instructions. |
| CoverageException public API | SqlFaker\Generation\Coverage | Reports a measurement infrastructure failure independently of SQL generation. |
| CoverageSets @visibility root | SqlFaker\Generation\Coverage | Maintains idempotent production sets and computes named measurements. |
| CoverageSnapshotStore @visibility root | SqlFaker\Generation\Coverage | Owns atomic snapshot replacement and rejects a second writer for the same key. |
| GenerationTrace @visibility root | SqlFaker\Generation\Coverage | Retains only the latest generation's occurrence paths and diagnostic attempt boundaries. |
| GeneratorRevision @visibility root | SqlFaker\Generation\Coverage | Identifies development implementations by source contents, never by dev-main alone. |
| GrammarCoverage public API | SqlFaker\Generation\Coverage | Observes derivations without influencing generation or consuming randomness. |
| GrammarCoverageInventory @visibility root | SqlFaker\Generation\Coverage | Enumerates the effective grammar before any per-generation restrictions. |
| LexicalObservation | SqlFaker\Generation\Coverage | Extracts finite definition features and detailed diagnostics without consuming generation choices. |
| SequenceObservation | SqlFaker\Generation\Coverage | Separates selected grammar occurrences from source subtrees preserved in the emitted sequence. |
| SnapshotValidation @visibility root | SqlFaker\Generation\Coverage | Validates persistence data before it can affect cumulative measurements. |
| CompletionCosts @visibility root | SqlFaker\Generation\Derivation | Computes minimum expansion costs separately for empty and non-empty output. |
| CompletionFrontier | SqlFaker\Generation\Derivation | Orders pending completions by their admissible lower bound and prunes equivalent more expensive states. |
| CompletionMemo | SqlFaker\Generation\Derivation | Reuses exact minima, affordable witnesses and exhausted-budget proofs within one immutable plan. |
| CompletionReduction | SqlFaker\Generation\Derivation | Eliminates independent subtrees using exact empty/non-empty costs instead of enumerating their derivations. |
| CompletionState | SqlFaker\Generation\Derivation | A leftmost derivation frontier with capped occurrence counters and an output obligation. |
| ConstrainedCompletion | SqlFaker\Generation\Derivation | Finds the cheapest completion respecting occurrence-specific patterns and pending siblings.
Unconstrained grammar costs are an admissible lower bound, never a claimed constrained minimum. |
| ConstraintDependencies | SqlFaker\Generation\Derivation | Finds exactly which grammar rules can reach a still-constrained occurrence. |
| Derivation @visibility root | SqlFaker\Generation\Derivation | Derives terminals from a common grammar while reserving enough steps to finish the remaining form. |
| DerivationNode @visibility root | SqlFaker\Generation\Derivation | Identifies an occurrence in a derivation rather than an object in the grammar. |
| DerivationTrace | SqlFaker\Generation\Derivation | Tracks occurrence identity alongside the sentential form without selecting productions. |
| TerminationAnalyzer @visibility root | SqlFaker\Generation\Derivation | Answers what it still costs to finish a rule or a production. |
| TerminationCost @visibility namespace | SqlFaker\Generation\Derivation | Answers the least a rule can cost to finish. |
| TokenGenerator | SqlFaker\Generation\Derivation | Derives grammar terminals without choosing spellings or pruning unsupported lexemes. |
| CompletionWitness | SqlFaker\Generation\Derivation\Completion | Proves cheap feasible continuations before the complete search; a failed probe proves nothing.
Every emitted witness actually walks the patterns, budget and output obligation without constructing SQL. |
| PatternProductions | SqlFaker\Generation\Derivation\Completion | Reuses immutable pattern/production matches across all frontiers and occurrences of the same constrained search. |
| GenerationException public API | SqlFaker\Generation\Exception | Reports that a grammar could not derive a statement. |
| LexicalException public API | SqlFaker\Generation\Exception | Reports missing lexical definitions, incompatible candidates and diagnostic tokenizer failures. |
| Lexeme | SqlFaker\Generation\Lexeme | Concrete text and its lexical use, without a decision about surrounding spaces. |
| LexemeBoundary | SqlFaker\Generation\Lexeme | Adjacent output lexemes, including boundaries inside a compound terminal. |
| LexemeCandidates | SqlFaker\Generation\Lexeme | A repeatable lazy candidate stream. An empty stream is distinct from non-applicability. |
| LexemeInput | SqlFaker\Generation\Lexeme | Per-generation input; dialect, version and registration tables belong to the generators. |
| LexemeSequence | SqlFaker\Generation\Lexeme | All lexemes of one candidate, in output order, including any left boundary requirement. |
| OutputPart | SqlFaker\Generation\Lexeme | A chosen lexeme and its resolved right boundary. |
| ResolvedOutput | SqlFaker\Generation\Lexeme | Immutable right-hand output with the condition still owed by its left neighbor. |
| SpacingConstraint | SqlFaker\Generation\Lexeme | Allowed boundary spellings with every contributing rule retained for diagnostics. |
| BoundaryCompletion | SqlFaker\Generation\Output | Discharges explicit left-boundary obligations before a candidate is committed.
Traversal stops when the obligation is discharged; it never retries completed SQL. |
| CandidateResolver | SqlFaker\Generation\Output | Evaluates one complete candidate against its internal and external boundaries. |
| CombinedSpacingRule | SqlFaker\Generation\Output | Intersects applicable constraints without interpreting their dialect-specific conditions. |
| ReverseLexemeGenerator | SqlFaker\Generation\Output | Chooses complete compatible candidates while traversing terminals from right to left. |
| SqlSerializer | SqlFaker\Generation\Output | Concatenates resolved output without formatting or interpreting SQL. |
| GenerationPlan public API | SqlFaker\Generation\Plan | An immutable plan selecting the start rule, productions, lexemes and expansion limits.
Plans can be reused without carrying mutable choice cursors between generations. |
| ProductionPattern @visibility root | SqlFaker\Generation\Plan | Narrows a rule to the alternatives a caller will accept. |
| ProductionOccurrence | SqlFaker\Generation\Token | Records a selected grammar alternative even when it emits no terminal. |
| TerminalMappingRule | SqlFaker\Generation\Token | Maps a direct terminal child of one grammar production to a declared contextual domain. |
| TerminalOccurrence | SqlFaker\Generation\Token | A terminal occurrence, including the productions that introduced it. |
| TerminalSequence | SqlFaker\Generation\Token | Ordered terminal occurrences; rewriting preserves the original derivation. |
| TokenRewriter | SqlFaker\Generation\Token | Applies a declared, finite sequence of structural rules without interpreting their syntax. |
| CharacterDomain | SqlFaker\Generation\Value | Declares a bounded sequence of complete character/escape atoms with fixed delimiters. |
| ChoiceDomain | SqlFaker\Generation\Value | Declares alternative constructive spelling domains, such as quoted and prefixed binary values. |
| IntegerDomain | SqlFaker\Generation\Value | Constructs bounded unsigned decimals by prefix intervals, independent of native integer width. |
| RandomCharacters | SqlFaker\Generation\Value | Draws a fixed number of bytes from a caller-supplied alphabet using Faker.
Contains no identifier, literal, quoting or database rules. |
| RepeatDomain | SqlFaker\Generation\Value | Repeats complete compound components, with a bounded sampling count. |
| SequenceDomain | SqlFaker\Generation\Value | Declares a compound value from independent domains without materializing their Cartesian product. |
| Utf8 | SqlFaker\Generation\Value | Reads UTF-8 scalar encodings, including the ASCII and three-byte subsets. |
| ValueChoices | SqlFaker\Generation\Value | Per-plan decisions, memoized so repeated candidate inspection cannot consume more randomness.
The caller interprets bytes; domains only receive bounded index decisions. |
| WordDomain | SqlFaker\Generation\Value | A finite spelling choice, including optional empty components. |