yini-parser
Version:
Readable configuration without YAML foot-guns or JSON noise. The official Node.js parser for YINI config format — An INI-inspired configuration format with clear nesting, explicit types, and predictable parsing.
342 lines (341 loc) • 14 kB
TypeScript
import { ATN, DFA, FailedPredicateException, Parser, ParserRuleContext, TerminalNode, TokenStream } from 'antlr4';
import YiniParserVisitor from "./YiniParserVisitor.js";
export default class YiniParser extends Parser {
static readonly YINI_TOKEN = 1;
static readonly INCLUDE_TOKEN = 2;
static readonly DEPRECATED_TOKEN = 3;
static readonly SECTION_HEAD = 4;
static readonly TERMINAL_TOKEN = 5;
static readonly SS = 6;
static readonly EUR = 7;
static readonly CARET = 8;
static readonly GT = 9;
static readonly LT = 10;
static readonly EQ = 11;
static readonly HASH = 12;
static readonly COMMA = 13;
static readonly COLON = 14;
static readonly OB = 15;
static readonly CB = 16;
static readonly OC = 17;
static readonly CC = 18;
static readonly PLUS = 19;
static readonly DOLLAR = 20;
static readonly PC = 21;
static readonly AT = 22;
static readonly SEMICOLON = 23;
static readonly BOOLEAN_FALSE = 24;
static readonly BOOLEAN_TRUE = 25;
static readonly NULL = 26;
static readonly EMPTY_OBJECT = 27;
static readonly EMPTY_LIST = 28;
static readonly SHEBANG = 29;
static readonly NUMBER = 30;
static readonly KEY = 31;
static readonly IDENT = 32;
static readonly IDENT_BACKTICKED = 33;
static readonly STRING = 34;
static readonly TRIPLE_QUOTED_STRING = 35;
static readonly SINGLE_OR_DOUBLE = 36;
static readonly R_AND_C_STRING = 37;
static readonly HYPER_STRING = 38;
static readonly ESC_SEQ = 39;
static readonly ESC_SEQ_BASE = 40;
static readonly NL = 41;
static readonly SINGLE_NL = 42;
static readonly WS = 43;
static readonly BLOCK_COMMENT = 44;
static readonly COMMENT = 45;
static readonly LINE_COMMENT = 46;
static readonly INLINE_COMMENT = 47;
static readonly IDENT_INVALID = 48;
static readonly REST = 49;
static readonly META_INVALID = 50;
static readonly EOF: number;
static readonly RULE_yini = 0;
static readonly RULE_prolog = 1;
static readonly RULE_terminal_stmt = 2;
static readonly RULE_stmt = 3;
static readonly RULE_meta_stmt = 4;
static readonly RULE_directive = 5;
static readonly RULE_annotation = 6;
static readonly RULE_eol = 7;
static readonly RULE_assignment = 8;
static readonly RULE_member = 9;
static readonly RULE_colon_list_decl = 10;
static readonly RULE_value = 11;
static readonly RULE_object_literal = 12;
static readonly RULE_object_members = 13;
static readonly RULE_object_member = 14;
static readonly RULE_list_literal = 15;
static readonly RULE_elements = 16;
static readonly RULE_number_literal = 17;
static readonly RULE_null_literal = 18;
static readonly RULE_string_literal = 19;
static readonly RULE_string_concat = 20;
static readonly RULE_boolean_literal = 21;
static readonly RULE_bad_meta_text = 22;
static readonly RULE_bad_member = 23;
static readonly literalNames: (string | null)[];
static readonly symbolicNames: (string | null)[];
static readonly ruleNames: string[];
get grammarFileName(): string;
get literalNames(): (string | null)[];
get symbolicNames(): (string | null)[];
get ruleNames(): string[];
get serializedATN(): number[];
protected createFailedPredicateException(predicate?: string, message?: string): FailedPredicateException;
constructor(input: TokenStream);
yini(): YiniContext;
prolog(): PrologContext;
terminal_stmt(): Terminal_stmtContext;
stmt(): StmtContext;
meta_stmt(): Meta_stmtContext;
directive(): DirectiveContext;
annotation(): AnnotationContext;
eol(): EolContext;
assignment(): AssignmentContext;
member(): MemberContext;
colon_list_decl(): Colon_list_declContext;
value(): ValueContext;
object_literal(): Object_literalContext;
object_members(): Object_membersContext;
object_member(): Object_memberContext;
list_literal(): List_literalContext;
elements(): ElementsContext;
number_literal(): Number_literalContext;
null_literal(): Null_literalContext;
string_literal(): String_literalContext;
string_concat(): String_concatContext;
boolean_literal(): Boolean_literalContext;
bad_meta_text(): Bad_meta_textContext;
bad_member(): Bad_memberContext;
static readonly _serializedATN: number[];
private static __ATN;
static get _ATN(): ATN;
static DecisionsToDFA: DFA[];
}
export declare class YiniContext extends ParserRuleContext {
constructor(parser?: YiniParser, parent?: ParserRuleContext, invokingState?: number);
EOF(): TerminalNode;
prolog(): PrologContext;
stmt_list(): StmtContext[];
stmt(i: number): StmtContext;
terminal_stmt(): Terminal_stmtContext;
get ruleIndex(): number;
accept<Result>(visitor: YiniParserVisitor<Result>): Result;
}
export declare class PrologContext extends ParserRuleContext {
constructor(parser?: YiniParser, parent?: ParserRuleContext, invokingState?: number);
SHEBANG(): TerminalNode;
eol_list(): EolContext[];
eol(i: number): EolContext;
get ruleIndex(): number;
accept<Result>(visitor: YiniParserVisitor<Result>): Result;
}
export declare class Terminal_stmtContext extends ParserRuleContext {
constructor(parser?: YiniParser, parent?: ParserRuleContext, invokingState?: number);
TERMINAL_TOKEN(): TerminalNode;
eol(): EolContext;
INLINE_COMMENT(): TerminalNode;
NL_list(): TerminalNode[];
NL(i: number): TerminalNode;
get ruleIndex(): number;
accept<Result>(visitor: YiniParserVisitor<Result>): Result;
}
export declare class StmtContext extends ParserRuleContext {
constructor(parser?: YiniParser, parent?: ParserRuleContext, invokingState?: number);
eol(): EolContext;
SECTION_HEAD(): TerminalNode;
assignment(): AssignmentContext;
colon_list_decl(): Colon_list_declContext;
meta_stmt(): Meta_stmtContext;
bad_member(): Bad_memberContext;
get ruleIndex(): number;
accept<Result>(visitor: YiniParserVisitor<Result>): Result;
}
export declare class Meta_stmtContext extends ParserRuleContext {
constructor(parser?: YiniParser, parent?: ParserRuleContext, invokingState?: number);
directive(): DirectiveContext;
annotation(): AnnotationContext;
bad_meta_text(): Bad_meta_textContext;
eol(): EolContext;
get ruleIndex(): number;
accept<Result>(visitor: YiniParserVisitor<Result>): Result;
}
export declare class DirectiveContext extends ParserRuleContext {
constructor(parser?: YiniParser, parent?: ParserRuleContext, invokingState?: number);
YINI_TOKEN(): TerminalNode;
eol(): EolContext;
INCLUDE_TOKEN(): TerminalNode;
WS_list(): TerminalNode[];
WS(i: number): TerminalNode;
string_literal(): String_literalContext;
get ruleIndex(): number;
accept<Result>(visitor: YiniParserVisitor<Result>): Result;
}
export declare class AnnotationContext extends ParserRuleContext {
constructor(parser?: YiniParser, parent?: ParserRuleContext, invokingState?: number);
DEPRECATED_TOKEN(): TerminalNode;
eol(): EolContext;
get ruleIndex(): number;
accept<Result>(visitor: YiniParserVisitor<Result>): Result;
}
export declare class EolContext extends ParserRuleContext {
constructor(parser?: YiniParser, parent?: ParserRuleContext, invokingState?: number);
INLINE_COMMENT(): TerminalNode;
NL_list(): TerminalNode[];
NL(i: number): TerminalNode;
get ruleIndex(): number;
accept<Result>(visitor: YiniParserVisitor<Result>): Result;
}
export declare class AssignmentContext extends ParserRuleContext {
constructor(parser?: YiniParser, parent?: ParserRuleContext, invokingState?: number);
member(): MemberContext;
eol(): EolContext;
get ruleIndex(): number;
accept<Result>(visitor: YiniParserVisitor<Result>): Result;
}
export declare class MemberContext extends ParserRuleContext {
constructor(parser?: YiniParser, parent?: ParserRuleContext, invokingState?: number);
KEY(): TerminalNode;
EQ(): TerminalNode;
WS_list(): TerminalNode[];
WS(i: number): TerminalNode;
value(): ValueContext;
get ruleIndex(): number;
accept<Result>(visitor: YiniParserVisitor<Result>): Result;
}
export declare class Colon_list_declContext extends ParserRuleContext {
constructor(parser?: YiniParser, parent?: ParserRuleContext, invokingState?: number);
KEY(): TerminalNode;
COLON(): TerminalNode;
elements(): ElementsContext;
eol_list(): EolContext[];
eol(i: number): EolContext;
WS_list(): TerminalNode[];
WS(i: number): TerminalNode;
get ruleIndex(): number;
accept<Result>(visitor: YiniParserVisitor<Result>): Result;
}
export declare class ValueContext extends ParserRuleContext {
constructor(parser?: YiniParser, parent?: ParserRuleContext, invokingState?: number);
null_literal(): Null_literalContext;
string_literal(): String_literalContext;
number_literal(): Number_literalContext;
boolean_literal(): Boolean_literalContext;
list_literal(): List_literalContext;
object_literal(): Object_literalContext;
get ruleIndex(): number;
accept<Result>(visitor: YiniParserVisitor<Result>): Result;
}
export declare class Object_literalContext extends ParserRuleContext {
constructor(parser?: YiniParser, parent?: ParserRuleContext, invokingState?: number);
OC(): TerminalNode;
CC(): TerminalNode;
NL_list(): TerminalNode[];
NL(i: number): TerminalNode;
object_members(): Object_membersContext;
EMPTY_OBJECT(): TerminalNode;
get ruleIndex(): number;
accept<Result>(visitor: YiniParserVisitor<Result>): Result;
}
export declare class Object_membersContext extends ParserRuleContext {
constructor(parser?: YiniParser, parent?: ParserRuleContext, invokingState?: number);
object_member_list(): Object_memberContext[];
object_member(i: number): Object_memberContext;
COMMA_list(): TerminalNode[];
COMMA(i: number): TerminalNode;
NL_list(): TerminalNode[];
NL(i: number): TerminalNode;
get ruleIndex(): number;
accept<Result>(visitor: YiniParserVisitor<Result>): Result;
}
export declare class Object_memberContext extends ParserRuleContext {
constructor(parser?: YiniParser, parent?: ParserRuleContext, invokingState?: number);
KEY(): TerminalNode;
COLON(): TerminalNode;
value(): ValueContext;
WS(): TerminalNode;
NL_list(): TerminalNode[];
NL(i: number): TerminalNode;
get ruleIndex(): number;
accept<Result>(visitor: YiniParserVisitor<Result>): Result;
}
export declare class List_literalContext extends ParserRuleContext {
constructor(parser?: YiniParser, parent?: ParserRuleContext, invokingState?: number);
OB(): TerminalNode;
CB(): TerminalNode;
NL_list(): TerminalNode[];
NL(i: number): TerminalNode;
elements(): ElementsContext;
EMPTY_LIST(): TerminalNode;
get ruleIndex(): number;
accept<Result>(visitor: YiniParserVisitor<Result>): Result;
}
export declare class ElementsContext extends ParserRuleContext {
constructor(parser?: YiniParser, parent?: ParserRuleContext, invokingState?: number);
value_list(): ValueContext[];
value(i: number): ValueContext;
COMMA_list(): TerminalNode[];
COMMA(i: number): TerminalNode;
NL_list(): TerminalNode[];
NL(i: number): TerminalNode;
get ruleIndex(): number;
accept<Result>(visitor: YiniParserVisitor<Result>): Result;
}
export declare class Number_literalContext extends ParserRuleContext {
constructor(parser?: YiniParser, parent?: ParserRuleContext, invokingState?: number);
NUMBER(): TerminalNode;
get ruleIndex(): number;
accept<Result>(visitor: YiniParserVisitor<Result>): Result;
}
export declare class Null_literalContext extends ParserRuleContext {
constructor(parser?: YiniParser, parent?: ParserRuleContext, invokingState?: number);
NULL(): TerminalNode;
get ruleIndex(): number;
accept<Result>(visitor: YiniParserVisitor<Result>): Result;
}
export declare class String_literalContext extends ParserRuleContext {
constructor(parser?: YiniParser, parent?: ParserRuleContext, invokingState?: number);
STRING(): TerminalNode;
string_concat_list(): String_concatContext[];
string_concat(i: number): String_concatContext;
get ruleIndex(): number;
accept<Result>(visitor: YiniParserVisitor<Result>): Result;
}
export declare class String_concatContext extends ParserRuleContext {
constructor(parser?: YiniParser, parent?: ParserRuleContext, invokingState?: number);
PLUS(): TerminalNode;
STRING(): TerminalNode;
NL_list(): TerminalNode[];
NL(i: number): TerminalNode;
get ruleIndex(): number;
accept<Result>(visitor: YiniParserVisitor<Result>): Result;
}
export declare class Boolean_literalContext extends ParserRuleContext {
constructor(parser?: YiniParser, parent?: ParserRuleContext, invokingState?: number);
BOOLEAN_TRUE(): TerminalNode;
BOOLEAN_FALSE(): TerminalNode;
get ruleIndex(): number;
accept<Result>(visitor: YiniParserVisitor<Result>): Result;
}
export declare class Bad_meta_textContext extends ParserRuleContext {
constructor(parser?: YiniParser, parent?: ParserRuleContext, invokingState?: number);
META_INVALID(): TerminalNode;
get ruleIndex(): number;
accept<Result>(visitor: YiniParserVisitor<Result>): Result;
}
export declare class Bad_memberContext extends ParserRuleContext {
constructor(parser?: YiniParser, parent?: ParserRuleContext, invokingState?: number);
EQ(): TerminalNode;
value_list(): ValueContext[];
value(i: number): ValueContext;
REST_list(): TerminalNode[];
REST(i: number): TerminalNode;
WS_list(): TerminalNode[];
WS(i: number): TerminalNode;
eol(): EolContext;
get ruleIndex(): number;
accept<Result>(visitor: YiniParserVisitor<Result>): Result;
}