layerCompiler 60
May depend on Grammar.
Namespaces§
| SqlFaker\Compiler | 2 classes |
| SqlFaker\Compiler\Bison | 5 classes |
| SqlFaker\Compiler\Bison\Ast | 1 interface 13 classes 1 enum |
| SqlFaker\Compiler\Bison\Directive | 1 interface 10 classes |
| SqlFaker\Compiler\Bison\Lexer | 1 interface 13 classes 1 enum |
| SqlFaker\Compiler\Bison\Rule | 3 classes |
| SqlFaker\Compiler\Lemon | 7 classes |
| SqlFaker\Compiler\Resource | 2 classes |
Interfaces 3§
| BisonDeclaration @visibility root | SqlFaker\Compiler\Bison\Ast | Marker interface for Bison declaration nodes. |
| BisonDirectiveReader @visibility root | SqlFaker\Compiler\Bison\Directive | Reads the arguments of one kind of Bison declaration. |
| BisonScanner @visibility root | SqlFaker\Compiler\Bison\Lexer | One state of the Bison lexer, selected by the character it starts on. |
Classes 55§
| GrammarParseException @visibility root | SqlFaker\Compiler | Reports that grammar source text could not be turned into a grammar. |
| UnknownSymbolException @visibility root | SqlFaker\Compiler | Thrown when a symbol in the AST is neither a rule name nor a declared token. |
| BisonParser @visibility root | SqlFaker\Compiler\Bison | Reads a GNU Bison or Yacc grammar file into an AST. |
| BisonPreamble @visibility root | SqlFaker\Compiler\Bison | Everything a grammar file states before its rules. |
| BisonPreambleReader @visibility root | SqlFaker\Compiler\Bison | Reads the declarations section of a Bison grammar. |
| BisonStartSymbol @visibility root | SqlFaker\Compiler\Bison | Decides which rule a derivation begins from. |
| GrammarCompiler @visibility root | SqlFaker\Compiler\Bison | Compiles a Grammar from a BisonAst. |
| BisonAlternativeNode @visibility root | SqlFaker\Compiler\Bison\Ast | Represents a single alternative in a grammar rule. |
| BisonAst @visibility root | SqlFaker\Compiler\Bison\Ast | Root AST node representing a complete Bison grammar file. |
| BisonDefineDeclaration @visibility root | SqlFaker\Compiler\Bison\Ast | Represents a %define declaration. |
| BisonExpectDeclaration @visibility root | SqlFaker\Compiler\Bison\Ast | Represents a %expect declaration. |
| BisonParamDeclaration @visibility root | SqlFaker\Compiler\Bison\Ast | Represents a %parse-param or %lex-param declaration. |
| BisonPrecedenceDeclaration @visibility root | SqlFaker\Compiler\Bison\Ast | Represents a %left, %right, or %nonassoc declaration. |
| BisonRuleNode @visibility root | SqlFaker\Compiler\Bison\Ast | Represents a grammar rule definition. |
| BisonStartDeclaration @visibility root | SqlFaker\Compiler\Bison\Ast | Represents a %start declaration. |
| BisonSymbolNode @visibility root | SqlFaker\Compiler\Bison\Ast | A symbol on the right-hand side of one rule alternative. |
| BisonTokenDeclaration @visibility root | SqlFaker\Compiler\Bison\Ast | Represents a %token declaration. |
| BisonTokenDefinition @visibility root | SqlFaker\Compiler\Bison\Ast | One terminal declared by a %token directive. |
| BisonTypeDeclaration @visibility root | SqlFaker\Compiler\Bison\Ast | Represents a %type declaration. |
| BisonUnknownDeclaration @visibility root | SqlFaker\Compiler\Bison\Ast | Represents an unknown or unsupported directive. |
| BisonDeclarationBoundary @visibility root | SqlFaker\Compiler\Bison\Directive | Decides where one declaration stops and the next thing starts. |
| BisonDirectiveReaderChain @visibility root | SqlFaker\Compiler\Bison\Directive | Routes a directive to the reader that knows its arguments. |
| DefineDirectiveReader @visibility root | SqlFaker\Compiler\Bison\Directive | Reads %define, which sets a named option of the generated parser. |
| ExpectDirectiveReader @visibility root | SqlFaker\Compiler\Bison\Directive | Reads %expect, the count of shift/reduce conflicts the author accepts. |
| ParamDirectiveReader @visibility root | SqlFaker\Compiler\Bison\Directive | Reads %parse-param and %lex-param, which add arguments to the generated
parser and scanner. |
| PrecedenceDirectiveReader @visibility root | SqlFaker\Compiler\Bison\Directive | Reads the four directives that rank operators against each other. |
| StartDirectiveReader @visibility root | SqlFaker\Compiler\Bison\Directive | Reads %start, which names the rule a derivation begins from. |
| TokenDirectiveReader @visibility root | SqlFaker\Compiler\Bison\Directive | Reads %token, which names the terminals the scanner may hand the parser. |
| TypeDirectiveReader @visibility root | SqlFaker\Compiler\Bison\Directive | Reads %type, which gives rules the semantic type their values carry. |
| UnknownDirectiveReader @visibility root | SqlFaker\Compiler\Bison\Directive | Reads any directive no other reader knows. |
| ActionScanner @visibility root | SqlFaker\Compiler\Bison\Lexer | Consumes a brace-delimited semantic action. |
| BisonLexer @visibility root | SqlFaker\Compiler\Bison\Lexer | Turns Bison grammar source into a stream of tokens, one call at a time. |
| BisonScannerChain @visibility root | SqlFaker\Compiler\Bison\Lexer | Chooses which scanner owns the character under the cursor. |
| BisonToken @visibility root | SqlFaker\Compiler\Bison\Lexer | One lexeme read out of a Bison grammar file. |
| BisonTokenStream @visibility root | SqlFaker\Compiler\Bison\Lexer | Adds lookahead to a Bison lexer. |
| BisonTrivia @visibility root | SqlFaker\Compiler\Bison\Lexer | The text between two lexemes that carries no token of its own. |
| DirectiveScanner @visibility root | SqlFaker\Compiler\Bison\Lexer | Consumes the three lexemes a percent sign can open. |
| IdentifierScanner @visibility root | SqlFaker\Compiler\Bison\Lexer | Consumes a symbol name. |
| NumberScanner @visibility root | SqlFaker\Compiler\Bison\Lexer | Consumes a decimal number. |
| PunctuationScanner @visibility root | SqlFaker\Compiler\Bison\Lexer | Consumes a single punctuation character. |
| QuotedLiteralScanner @visibility root | SqlFaker\Compiler\Bison\Lexer | Consumes a quoted literal. |
| SourceCursor @visibility root | SqlFaker\Compiler\Bison\Lexer | A moving read position over grammar source text. |
| TypeTagScanner @visibility root | SqlFaker\Compiler\Bison\Lexer | Consumes an angle-bracketed semantic type tag such as <num>. |
| BisonAlternativeDraft @visibility root | SqlFaker\Compiler\Bison\Rule | The alternative currently being read. |
| BisonAlternativeReader @visibility root | SqlFaker\Compiler\Bison\Rule | Reads the alternatives on the right-hand side of one rule. |
| BisonRuleReader @visibility root | SqlFaker\Compiler\Bison\Rule | Reads the rules section of a Bison grammar. |
| LemonCondition | SqlFaker\Compiler\Lemon | Evaluates the named boolean conditions used by Lemon's preprocess_input. tool/lemon.c short-circuits a sequence from left to right; parentheses provide grouping. |
| LemonDirectives @visibility root | SqlFaker\Compiler\Lemon | Reads the tokens a Lemon grammar declares before any rule is written. |
| LemonParser @visibility root | SqlFaker\Compiler\Lemon | Reads Lemon source declarations and production rules into a grammar. |
| LemonPreprocessor | SqlFaker\Compiler\Lemon | Selects source branches using the %if/%ifdef/%ifndef/%else/%endif directives from tool/lemon.c. |
| LemonRules @visibility root | SqlFaker\Compiler\Lemon | Reads the rules a Lemon grammar writes. |
| LemonSymbols @visibility root | SqlFaker\Compiler\Lemon | Remembers which names a Lemon grammar uses as tokens and which as rules. |
| LemonText @visibility root | SqlFaker\Compiler\Lemon | Removes from a Lemon file everything that is not grammar. |
| ArtifactDirectory @visibility parent | SqlFaker\Compiler\Resource | Answers which directory a generated artifact is written into. |
| GrammarWriter | SqlFaker\Compiler\Resource | Publishes one generated AST; lexical declarations are maintained in source code. |
Enums 2§
| BisonSymbolForm @visibility root | SqlFaker\Compiler\Bison\Ast | How a symbol was written on the right-hand side of a rule. |
| BisonLexeme @visibility root | SqlFaker\Compiler\Bison\Lexer | The kinds of lexeme a Bison grammar file is written from. |