yini-parser
Version:
Node.js parser for YINI — a clean, structured INI alternative with types, simple section nesting, comments, and strict mode.
325 lines (324 loc) • 13.4 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_MARKER = 1;
static readonly SECTION_HEAD = 2;
static readonly TERMINAL_TOKEN = 3;
static readonly SS = 4;
static readonly EUR = 5;
static readonly CARET = 6;
static readonly GT = 7;
static readonly LT = 8;
static readonly EQ = 9;
static readonly HASH = 10;
static readonly COMMA = 11;
static readonly COLON = 12;
static readonly OB = 13;
static readonly CB = 14;
static readonly OC = 15;
static readonly CC = 16;
static readonly PLUS = 17;
static readonly DOLLAR = 18;
static readonly PC = 19;
static readonly AT = 20;
static readonly SEMICOLON = 21;
static readonly BOOLEAN_FALSE = 22;
static readonly BOOLEAN_TRUE = 23;
static readonly NULL = 24;
static readonly EMPTY_OBJECT = 25;
static readonly EMPTY_LIST = 26;
static readonly SHEBANG = 27;
static readonly NUMBER = 28;
static readonly KEY = 29;
static readonly IDENT = 30;
static readonly IDENT_BACKTICKED = 31;
static readonly STRING = 32;
static readonly TRIPLE_QUOTED_STRING = 33;
static readonly SINGLE_OR_DOUBLE = 34;
static readonly R_AND_C_STRING = 35;
static readonly HYPER_STRING = 36;
static readonly ESC_SEQ = 37;
static readonly ESC_SEQ_BASE = 38;
static readonly NL = 39;
static readonly SINGLE_NL = 40;
static readonly WS = 41;
static readonly BLOCK_COMMENT = 42;
static readonly COMMENT = 43;
static readonly LINE_COMMENT = 44;
static readonly INLINE_COMMENT = 45;
static readonly IDENT_INVALID = 46;
static readonly REST = 47;
static readonly EOF: number;
static readonly RULE_yini = 0;
static readonly RULE_section = 1;
static readonly RULE_terminal_line = 2;
static readonly RULE_section_members = 3;
static readonly RULE_member = 4;
static readonly RULE_member_colon_list = 5;
static readonly RULE_value = 6;
static readonly RULE_object_literal = 7;
static readonly RULE_objectMemberList = 8;
static readonly RULE_objectMember = 9;
static readonly RULE_list = 10;
static readonly RULE_list_in_brackets = 11;
static readonly RULE_elements = 12;
static readonly RULE_element = 13;
static readonly RULE_number_literal = 14;
static readonly RULE_null_literal = 15;
static readonly RULE_string_literal = 16;
static readonly RULE_string_concat = 17;
static readonly RULE_boolean_literal = 18;
static readonly RULE_empty_object = 19;
static readonly RULE_empty_list = 20;
static readonly RULE_bad_member = 21;
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;
section(): SectionContext;
terminal_line(): Terminal_lineContext;
section_members(): Section_membersContext;
member(): MemberContext;
member_colon_list(): Member_colon_listContext;
value(): ValueContext;
object_literal(): Object_literalContext;
objectMemberList(): ObjectMemberListContext;
objectMember(): ObjectMemberContext;
list(): ListContext;
list_in_brackets(): List_in_bracketsContext;
elements(): ElementsContext;
element(): ElementContext;
number_literal(): Number_literalContext;
null_literal(): Null_literalContext;
string_literal(): String_literalContext;
string_concat(): String_concatContext;
boolean_literal(): Boolean_literalContext;
empty_object(): Empty_objectContext;
empty_list(): Empty_listContext;
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);
SHEBANG(): TerminalNode;
INLINE_COMMENT_list(): TerminalNode[];
INLINE_COMMENT(i: number): TerminalNode;
NL_list(): TerminalNode[];
NL(i: number): TerminalNode;
YINI_MARKER(): TerminalNode;
section_list(): SectionContext[];
section(i: number): SectionContext;
terminal_line(): Terminal_lineContext;
EOF(): TerminalNode;
get ruleIndex(): number;
accept<Result>(visitor: YiniParserVisitor<Result>): Result;
}
export declare class SectionContext extends ParserRuleContext {
constructor(parser?: YiniParser, parent?: ParserRuleContext, invokingState?: number);
section_members(): Section_membersContext;
SECTION_HEAD(): TerminalNode;
get ruleIndex(): number;
accept<Result>(visitor: YiniParserVisitor<Result>): Result;
}
export declare class Terminal_lineContext extends ParserRuleContext {
constructor(parser?: YiniParser, parent?: ParserRuleContext, invokingState?: number);
TERMINAL_TOKEN(): TerminalNode;
NL_list(): TerminalNode[];
NL(i: number): TerminalNode;
INLINE_COMMENT(): TerminalNode;
get ruleIndex(): number;
accept<Result>(visitor: YiniParserVisitor<Result>): Result;
}
export declare class Section_membersContext extends ParserRuleContext {
constructor(parser?: YiniParser, parent?: ParserRuleContext, invokingState?: number);
member_list(): MemberContext[];
member(i: number): MemberContext;
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;
NL_list(): TerminalNode[];
NL(i: number): TerminalNode;
member_colon_list(): Member_colon_listContext;
SECTION_HEAD(): TerminalNode;
section_members(): Section_membersContext;
bad_member(): Bad_memberContext;
get ruleIndex(): number;
accept<Result>(visitor: YiniParserVisitor<Result>): Result;
}
export declare class Member_colon_listContext extends ParserRuleContext {
constructor(parser?: YiniParser, parent?: ParserRuleContext, invokingState?: number);
KEY(): TerminalNode;
COLON(): TerminalNode;
WS(): TerminalNode;
elements(): ElementsContext;
NL_list(): TerminalNode[];
NL(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_in_brackets(): List_in_bracketsContext;
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;
objectMemberList(): ObjectMemberListContext;
CC(): TerminalNode;
NL_list(): TerminalNode[];
NL(i: number): TerminalNode;
empty_object(): Empty_objectContext;
get ruleIndex(): number;
accept<Result>(visitor: YiniParserVisitor<Result>): Result;
}
export declare class ObjectMemberListContext extends ParserRuleContext {
constructor(parser?: YiniParser, parent?: ParserRuleContext, invokingState?: number);
objectMember_list(): ObjectMemberContext[];
objectMember(i: number): ObjectMemberContext;
COMMA_list(): TerminalNode[];
COMMA(i: number): TerminalNode;
NL_list(): TerminalNode[];
NL(i: number): TerminalNode;
empty_object(): Empty_objectContext;
get ruleIndex(): number;
accept<Result>(visitor: YiniParserVisitor<Result>): Result;
}
export declare class ObjectMemberContext 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 ListContext extends ParserRuleContext {
constructor(parser?: YiniParser, parent?: ParserRuleContext, invokingState?: number);
elements(): ElementsContext;
list_in_brackets(): List_in_bracketsContext;
get ruleIndex(): number;
accept<Result>(visitor: YiniParserVisitor<Result>): Result;
}
export declare class List_in_bracketsContext extends ParserRuleContext {
constructor(parser?: YiniParser, parent?: ParserRuleContext, invokingState?: number);
OB(): TerminalNode;
elements(): ElementsContext;
CB(): TerminalNode;
NL_list(): TerminalNode[];
NL(i: number): TerminalNode;
empty_list(): Empty_listContext;
get ruleIndex(): number;
accept<Result>(visitor: YiniParserVisitor<Result>): Result;
}
export declare class ElementsContext extends ParserRuleContext {
constructor(parser?: YiniParser, parent?: ParserRuleContext, invokingState?: number);
element(): ElementContext;
COMMA(): TerminalNode;
elements(): ElementsContext;
get ruleIndex(): number;
accept<Result>(visitor: YiniParserVisitor<Result>): Result;
}
export declare class ElementContext extends ParserRuleContext {
constructor(parser?: YiniParser, parent?: ParserRuleContext, invokingState?: number);
value(): ValueContext;
NL_list(): TerminalNode[];
NL(i: number): TerminalNode;
list_in_brackets(): List_in_bracketsContext;
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_FALSE(): TerminalNode;
BOOLEAN_TRUE(): TerminalNode;
get ruleIndex(): number;
accept<Result>(visitor: YiniParserVisitor<Result>): Result;
}
export declare class Empty_objectContext extends ParserRuleContext {
constructor(parser?: YiniParser, parent?: ParserRuleContext, invokingState?: number);
EMPTY_OBJECT(): TerminalNode;
OC(): TerminalNode;
CC(): TerminalNode;
NL_list(): TerminalNode[];
NL(i: number): TerminalNode;
get ruleIndex(): number;
accept<Result>(visitor: YiniParserVisitor<Result>): Result;
}
export declare class Empty_listContext extends ParserRuleContext {
constructor(parser?: YiniParser, parent?: ParserRuleContext, invokingState?: number);
EMPTY_LIST(): TerminalNode;
OB(): TerminalNode;
CB(): TerminalNode;
NL_list(): TerminalNode[];
NL(i: number): 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;
NL(): TerminalNode;
get ruleIndex(): number;
accept<Result>(visitor: YiniParserVisitor<Result>): Result;
}