CommonRegexParser class
- Extends
-
Parser
Costruttori
Common |
Proprietà
Proprietà ereditate
atn | Ottenere il serializedATN usato dal riconoscitore per la stima. |
build |
Tenere traccia degli oggetti <xref:ParserRuleContext> durante l'analisi e associarli usando l'elenco <xref:ParserRuleContext%23children> in modo che formi un albero di analisi. Il <xref:ParserRuleContext> restituito dalla regola iniziale rappresenta la radice dell'albero di analisi. Si noti che se non si creano alberi di analisi, i contesti delle regole puntano solo verso l'alto. Quando una regola viene chiusa, restituisce il contesto, ma viene sottoposto a Garbage Collection se nessuno contiene un riferimento. Punta verso l'alto, ma nessuno lo punta. Quando si compilano alberi di analisi, si aggiungono tutti questi contesti all'elenco di <xref:ParserRuleContext%23children>. I contesti non sono quindi candidati per l'operazione di Garbage Collection. |
context | |
current |
La corrispondenza deve restituire il simbolo di input corrente, che viene inserito nell'etichetta per il riferimento del token associato; ad esempio x=ID. |
EOF | |
error |
|
input |
Impostare il flusso del token e reimpostare il parser. |
interpreter | Impostare l'interprete ATN usato dal riconoscitore per la stima. |
is |
|
is |
Durante un'analisi è talvolta utile ascoltare gli eventi di ingresso e uscita della regola, nonché le corrispondenze dei token. Questo è per il debug rapido e sporco. |
number |
Ottiene il numero di errori di sintassi segnalati durante l'analisi. Questo valore viene incrementato ogni volta che viene chiamato <xref:%23notifyErrorListeners>. Vedere #notifyErrorListeners |
parse |
|
precedence | Ottenere il livello di precedenza per la regola di precedenza più alta. |
rule |
|
source |
|
state | Indicare che il riconoscitore ha modificato lo stato interno coerente con lo stato ATN passato. In questo modo si sa sempre dove ci si trova nell'ATN mentre il parser va avanti. Gli oggetti contesto regola formano uno stack che consente di visualizzare lo stack di richiamo delle regole. Combinare questa operazione e sono disponibili informazioni di configurazione ATN complete. |
token |
Metodi
Metodi ereditati
action(Rule |
|
add |
|
add |
Registra Con le eccezioni specifiche seguenti, le chiamate agli eventi del listener sono deterministiche, ad esempio per l'input identico le chiamate ai metodi del listener saranno uguali.
|
compile |
Metodo preferito per ottenere un modello ad albero. Ad esempio, di seguito è riportato un esempio di uso:
|
compile |
Uguale a [int)](xref:%23compileParseTreePattern(String%2C) ma specificare un CommonRegexLexer anziché tentare di dedurrlo da questo parser. |
consume() | Utilizzare e restituire il simbolo corrente .
Ad esempio, dato l'input seguente con
Se il parser non è in modalità di recupero degli errori, il simbolo utilizzato viene aggiunto all'albero di analisi usando <xref:ParserRuleContext%23addChild(TerminalNode)>e <xref:ParseTreeListener%23visitTerminal> viene chiamato su qualsiasi listener di analisi. Se il parser è in modalità di recupero degli errori, il simbolo utilizzato viene aggiunto all'albero di analisi usando [Token)](xref:%23createErrorNode(ParserRuleContext%2C) <xref:ParserRuleContext%23addErrorNode(ErrorNode)> e <xref:ParseTreeListener%23visitErrorNode> viene chiamato su qualsiasi listener di analisi. |
create |
Come creare un nodo di errore, dato un token, associato a un elemento padre. In genere, il nodo di errore da creare non è una funzione dell'elemento padre. |
create |
Come creare un nodo foglia del token associato a un elemento padre. In genere, il nodo del terminale da creare non è una funzione dell'elemento padre. |
dumpDFA() | Per scopi di debug e altri scopi. |
enter |
|
enter |
|
enter |
|
enter |
Chiamato sempre dai parser generati al momento dell'immissione di una regola. Campo di accesso <xref:%23_ctx> ottenere il contesto corrente. |
exit |
|
get |
L'ATN con alternative di bypass è costoso da creare in modo da crearlo in modo differire.
@ se il parser corrente non implementa la proprietà |
get |
Per scopi di debug e altri scopi. |
get |
Qual è l'intestazione dell'errore, in genere informazioni sulla posizione di riga/carattere? |
get |
|
get |
|
get |
Calcola il set di simboli di input che possono seguire rispettivamente lo stato e il contesto del parser corrente, come indicato rispettivamente da <xref:%23getState> e <xref:%23getContext>. Vedere ATN#getExpectedTokens(int, RuleContext) |
get |
|
get |
|
get |
|
get |
Ottenere l'indice di una regola (ad esempio, |
get |
Ottenere una mappa dai nomi delle regole agli indici delle regole. Usato per la compilazione di modelli di albero e XPath. |
get |
Return List<String> dei nomi delle regole nell'istanza del parser che conduce a una chiamata alla regola corrente. È possibile eseguire l'override se si desiderano altri dettagli, ad esempio le informazioni di file/riga di dove viene richiamata una regola ATN. Questo è molto utile per i messaggi di errore. |
get |
|
get |
Ottenere una mappa dai nomi dei token ai tipi di token. Usato per la compilazione di modelli di albero e XPath. |
in |
|
is |
Controlla se
|
match(number) | Trova la corrispondenza tra il simbolo di input corrente e |
match |
Trova la corrispondenza con il simbolo di input corrente come carattere jolly. Se il tipo di simbolo corrisponde (ad esempio, ha un valore maggiore di 0), <xref:ANTLRErrorStrategy%23reportMatch> e <xref:%23consume> vengono chiamati per completare il processo di corrispondenza.
Se il tipo di simbolo non corrisponde, <xref:ANTLRErrorStrategy%23recoverInline> viene chiamato sulla strategia di errore corrente per tentare il ripristino. Se <xref:%23getBuildParseTree> è |
notify |
|
notify |
|
precpred(Rule |
|
push |
Come <xref:%23enterRule> ma per le regole ricorsive. Impostare il contesto corrente come elemento figlio dell'oggetto localctx in ingresso. |
remove |
|
remove |
|
remove |
Rimuovere Vedere #addParseListener |
remove |
Rimuovere tutti i listener di analisi. Vedere #addParseListener |
reset() | reimpostare lo stato del parser |
reset(boolean) | |
sempred(Rule |
|
set |
|
unroll |
Dettagli costruttore
CommonRegexParser(TokenStream)
new CommonRegexParser(input: TokenStream)
Parametri
- input
-
TokenStream
Dettagli proprietà
ALC
public static ALC: 44 = 44
Valore della proprietà
44
Ampersand
public static Ampersand: 43 = 43
Valore della proprietà
43
AUC
public static AUC: 70 = 70
Valore della proprietà
70
Backslash
public static Backslash: 10 = 10
Valore della proprietà
10
BellChar
public static BellChar: 3 = 3
Valore della proprietà
3
BLC
public static BLC: 45 = 45
Valore della proprietà
45
BlockQuoted
public static BlockQuoted: 2 = 2
Valore della proprietà
2
BUC
public static BUC: 71 = 71
Valore della proprietà
71
Caret
public static Caret: 23 = 23
Valore della proprietà
23
CarriageReturn
public static CarriageReturn: 8 = 8
Valore della proprietà
8
CharacterClassEnd
public static CharacterClassEnd: 22 = 22
Valore della proprietà
22
CharacterClassStart
public static CharacterClassStart: 21 = 21
Valore della proprietà
21
CharWithoutProperty
public static CharWithoutProperty: 16 = 16
Valore della proprietà
16
CharWithProperty
public static CharWithProperty: 15 = 15
Valore della proprietà
15
CLC
public static CLC: 46 = 46
Valore della proprietà
46
CloseBrace
public static CloseBrace: 29 = 29
Valore della proprietà
29
CloseParen
public static CloseParen: 34 = 34
Valore della proprietà
34
Colon
public static Colon: 39 = 39
Valore della proprietà
39
Comma
public static Comma: 30 = 30
Valore della proprietà
30
ControlChar
public static ControlChar: 4 = 4
Valore della proprietà
4
CUC
public static CUC: 72 = 72
Valore della proprietà
72
D0
public static D0: 105 = 105
Valore della proprietà
105
D1
public static D1: 96 = 96
Valore della proprietà
96
D2
public static D2: 97 = 97
Valore della proprietà
97
D3
public static D3: 98 = 98
Valore della proprietà
98
D4
public static D4: 99 = 99
Valore della proprietà
99
D5
public static D5: 100 = 100
Valore della proprietà
100
D6
public static D6: 101 = 101
Valore della proprietà
101
D7
public static D7: 102 = 102
Valore della proprietà
102
D8
public static D8: 103 = 103
Valore della proprietà
103
D9
public static D9: 104 = 104
Valore della proprietà
104
DecimalDigit
public static DecimalDigit: 13 = 13
Valore della proprietà
13
DLC
public static DLC: 47 = 47
Valore della proprietà
47
Dot
public static Dot: 12 = 12
Valore della proprietà
12
DUC
public static DUC: 73 = 73
Valore della proprietà
73
ELC
public static ELC: 48 = 48
Valore della proprietà
48
EndOfSubject
public static EndOfSubject: 31 = 31
Valore della proprietà
31
Equals
public static Equals: 41 = 41
Valore della proprietà
41
EscapeChar
public static EscapeChar: 5 = 5
Valore della proprietà
5
EUC
public static EUC: 74 = 74
Valore della proprietà
74
Exclamation
public static Exclamation: 42 = 42
Valore della proprietà
42
FLC
public static FLC: 49 = 49
Valore della proprietà
49
FormFeed
public static FormFeed: 6 = 6
Valore della proprietà
6
FUC
public static FUC: 75 = 75
Valore della proprietà
75
GLC
public static GLC: 50 = 50
Valore della proprietà
50
grammarFileName
string grammarFileName
Valore della proprietà
string
GreaterThan
public static GreaterThan: 36 = 36
Valore della proprietà
36
GUC
public static GUC: 76 = 76
Valore della proprietà
76
Hash
public static Hash: 40 = 40
Valore della proprietà
40
HexChar
public static HexChar: 11 = 11
Valore della proprietà
11
HLC
public static HLC: 51 = 51
Valore della proprietà
51
HUC
public static HUC: 77 = 77
Valore della proprietà
77
Hyphen
public static Hyphen: 24 = 24
Valore della proprietà
24
ILC
public static ILC: 52 = 52
Valore della proprietà
52
IUC
public static IUC: 78 = 78
Valore della proprietà
78
JLC
public static JLC: 53 = 53
Valore della proprietà
53
JUC
public static JUC: 79 = 79
Valore della proprietà
79
KLC
public static KLC: 54 = 54
Valore della proprietà
54
KUC
public static KUC: 80 = 80
Valore della proprietà
80
LessThan
public static LessThan: 35 = 35
Valore della proprietà
35
LLC
public static LLC: 55 = 55
Valore della proprietà
55
LUC
public static LUC: 81 = 81
Valore della proprietà
81
MLC
public static MLC: 56 = 56
Valore della proprietà
56
MUC
public static MUC: 82 = 82
Valore della proprietà
82
NewLine
public static NewLine: 7 = 7
Valore della proprietà
7
NLC
public static NLC: 57 = 57
Valore della proprietà
57
NotDecimalDigit
public static NotDecimalDigit: 14 = 14
Valore della proprietà
14
NotWhiteSpace
public static NotWhiteSpace: 18 = 18
Valore della proprietà
18
NotWordChar
public static NotWordChar: 20 = 20
Valore della proprietà
20
NUC
public static NUC: 83 = 83
Valore della proprietà
83
OLC
public static OLC: 58 = 58
Valore della proprietà
58
OpenBrace
public static OpenBrace: 28 = 28
Valore della proprietà
28
OpenParen
public static OpenParen: 33 = 33
Valore della proprietà
33
OtherChar
public static OtherChar: 106 = 106
Valore della proprietà
106
OUC
public static OUC: 84 = 84
Valore della proprietà
84
Pipe
public static Pipe: 32 = 32
Valore della proprietà
32
PLC
public static PLC: 59 = 59
Valore della proprietà
59
Plus
public static Plus: 26 = 26
Valore della proprietà
26
PUC
public static PUC: 85 = 85
Valore della proprietà
85
QLC
public static QLC: 60 = 60
Valore della proprietà
60
QUC
public static QUC: 86 = 86
Valore della proprietà
86
QuestionMark
public static QuestionMark: 25 = 25
Valore della proprietà
25
Quoted
public static Quoted: 1 = 1
Valore della proprietà
1
RLC
public static RLC: 61 = 61
Valore della proprietà
61
RUC
public static RUC: 87 = 87
Valore della proprietà
87
ruleNames
public static ruleNames: string[] = [
"parse", "alternation", "expr", "element", "quantifier", "quantifier_type",
"character_class", "capture", "non_capture", "option", "option_flag",
"atom", "cc_atom", "shared_atom", "literal", "cc_literal", "shared_literal",
"number", "octal_char", "octal_digit", "digits", "digit", "name", "alpha_nums",
"non_close_parens", "non_close_paren", "letter",
]
Valore della proprietà
string[]
ruleNames
string[] ruleNames
Valore della proprietà
string[]
RULE_alpha_nums
public static RULE_alpha_nums: 23 = 23
Valore della proprietà
23
RULE_alternation
public static RULE_alternation: 1 = 1
Valore della proprietà
1
RULE_atom
public static RULE_atom: 11 = 11
Valore della proprietà
11
RULE_capture
public static RULE_capture: 7 = 7
Valore della proprietà
7
RULE_cc_atom
public static RULE_cc_atom: 12 = 12
Valore della proprietà
12
RULE_cc_literal
public static RULE_cc_literal: 15 = 15
Valore della proprietà
15
RULE_character_class
public static RULE_character_class: 6 = 6
Valore della proprietà
6
RULE_digit
public static RULE_digit: 21 = 21
Valore della proprietà
21
RULE_digits
public static RULE_digits: 20 = 20
Valore della proprietà
20
RULE_element
public static RULE_element: 3 = 3
Valore della proprietà
3
RULE_expr
public static RULE_expr: 2 = 2
Valore della proprietà
2
RULE_letter
public static RULE_letter: 26 = 26
Valore della proprietà
26
RULE_literal
public static RULE_literal: 14 = 14
Valore della proprietà
14
RULE_name
public static RULE_name: 22 = 22
Valore della proprietà
22
RULE_non_capture
public static RULE_non_capture: 8 = 8
Valore della proprietà
8
RULE_non_close_paren
public static RULE_non_close_paren: 25 = 25
Valore della proprietà
25
RULE_non_close_parens
public static RULE_non_close_parens: 24 = 24
Valore della proprietà
24
RULE_number
public static RULE_number: 17 = 17
Valore della proprietà
17
RULE_octal_char
public static RULE_octal_char: 18 = 18
Valore della proprietà
18
RULE_octal_digit
public static RULE_octal_digit: 19 = 19
Valore della proprietà
19
RULE_option
public static RULE_option: 9 = 9
Valore della proprietà
9
RULE_option_flag
public static RULE_option_flag: 10 = 10
Valore della proprietà
10
RULE_parse
public static RULE_parse: 0 = 0
Valore della proprietà
0
RULE_quantifier
public static RULE_quantifier: 4 = 4
Valore della proprietà
4
RULE_quantifier_type
public static RULE_quantifier_type: 5 = 5
Valore della proprietà
5
RULE_shared_atom
public static RULE_shared_atom: 13 = 13
Valore della proprietà
13
RULE_shared_literal
public static RULE_shared_literal: 16 = 16
Valore della proprietà
16
serializedATN
string serializedATN
Valore della proprietà
string
SingleQuote
public static SingleQuote: 37 = 37
Valore della proprietà
37
SLC
public static SLC: 62 = 62
Valore della proprietà
62
Star
public static Star: 27 = 27
Valore della proprietà
27
SUC
public static SUC: 88 = 88
Valore della proprietà
88
Tab
public static Tab: 9 = 9
Valore della proprietà
9
TLC
public static TLC: 63 = 63
Valore della proprietà
63
TUC
public static TUC: 89 = 89
Valore della proprietà
89
ULC
public static ULC: 64 = 64
Valore della proprietà
64
Underscore
public static Underscore: 38 = 38
Valore della proprietà
38
UUC
public static UUC: 90 = 90
Valore della proprietà
90
VLC
public static VLC: 65 = 65
Valore della proprietà
65
VOCABULARY
public static VOCABULARY: Vocabulary = new VocabularyImpl(CommonRegexParser._LITERAL_NAMES, CommonRegexParser._SYMBOLIC_NAMES, [])
Valore della proprietà
Vocabulary
vocabulary
Vocabulary vocabulary
Valore della proprietà
Vocabulary
VUC
public static VUC: 91 = 91
Valore della proprietà
91
WhiteSpace
public static WhiteSpace: 17 = 17
Valore della proprietà
17
WLC
public static WLC: 66 = 66
Valore della proprietà
66
WordChar
public static WordChar: 19 = 19
Valore della proprietà
19
WUC
public static WUC: 92 = 92
Valore della proprietà
92
XLC
public static XLC: 67 = 67
Valore della proprietà
67
XUC
public static XUC: 93 = 93
Valore della proprietà
93
YLC
public static YLC: 68 = 68
Valore della proprietà
68
YUC
public static YUC: 94 = 94
Valore della proprietà
94
ZLC
public static ZLC: 69 = 69
Valore della proprietà
69
ZUC
public static ZUC: 95 = 95
Valore della proprietà
95
Dettagli proprietà ereditate
atn
Ottenere il serializedATN usato dal riconoscitore per la stima.
atn: ATN
Valore della proprietà
ATN
ereditato da Recognizer.atn
buildParseTree
Tenere traccia degli oggetti <xref:ParserRuleContext> durante l'analisi e associarli usando l'elenco <xref:ParserRuleContext%23children> in modo che formi un albero di analisi. Il <xref:ParserRuleContext> restituito dalla regola iniziale rappresenta la radice dell'albero di analisi. Si noti che se non si creano alberi di analisi, i contesti delle regole puntano solo verso l'alto. Quando una regola viene chiusa, restituisce il contesto, ma viene sottoposto a Garbage Collection se nessuno contiene un riferimento. Punta verso l'alto, ma nessuno lo punta.
Quando si compilano alberi di analisi, si aggiungono tutti questi contesti all'elenco di <xref:ParserRuleContext%23children>. I contesti non sono quindi candidati per l'operazione di Garbage Collection.
buildParseTree: boolean
Valore della proprietà
boolean
Ereditato da Parser.buildParseTree
context
context: ParserRuleContext
Valore della proprietà
ParserRuleContext
ereditato da Parser.context
currentToken
La corrispondenza deve restituire il simbolo di input corrente, che viene inserito nell'etichetta per il riferimento del token associato; ad esempio x=ID.
currentToken: Token
Valore della proprietà
Token
Ereditato da Parser.currentToken
EOF
static EOF: number
Valore della proprietà
number
ereditato da Recognizer.EOF
errorHandler
errorHandler: ANTLRErrorStrategy
Valore della proprietà
ANTLRErrorStrategy
Ereditato da Parser.errorHandler
inputStream
Impostare il flusso del token e reimpostare il parser.
inputStream: TokenStream
Valore della proprietà
TokenStream
Ereditato da Parser.inputStream
interpreter
Impostare l'interprete ATN usato dal riconoscitore per la stima.
interpreter: ParserATNSimulator
Valore della proprietà
ParserATNSimulator
Ereditato da Recognizer.interpreter
isMatchedEOF
isMatchedEOF: boolean
Valore della proprietà
boolean
Ereditato da Parser.isMatchedEOF
isTrace
Durante un'analisi è talvolta utile ascoltare gli eventi di ingresso e uscita della regola, nonché le corrispondenze dei token. Questo è per il debug rapido e sporco.
isTrace: boolean
Valore della proprietà
boolean
Ereditato da Parser.isTrace
numberOfSyntaxErrors
Ottiene il numero di errori di sintassi segnalati durante l'analisi. Questo valore viene incrementato ogni volta che viene chiamato <xref:%23notifyErrorListeners>.
Vedere #notifyErrorListeners
numberOfSyntaxErrors: number
Valore della proprietà
number
Ereditato da Parser.numberOfSyntaxErrors
parseInfo
parseInfo: Promise<ParseInfo | undefined>
Valore della proprietà
Promise<ParseInfo | undefined>
Ereditato da Parser.parseInfo
precedence
Ottenere il livello di precedenza per la regola di precedenza più alta.
precedence: number
Valore della proprietà
number
ereditato da Parser.precedence
ruleContext
ruleContext: ParserRuleContext
Valore della proprietà
ParserRuleContext
Ereditato da Parser.ruleContext
sourceName
sourceName: string
Valore della proprietà
string
ereditato da Parser.sourceName
state
Indicare che il riconoscitore ha modificato lo stato interno coerente con lo stato ATN passato. In questo modo si sa sempre dove ci si trova nell'ATN mentre il parser va avanti. Gli oggetti contesto regola formano uno stack che consente di visualizzare lo stack di richiamo delle regole. Combinare questa operazione e sono disponibili informazioni di configurazione ATN complete.
state: number
Valore della proprietà
number
ereditato da Recognizer.state
tokenFactory
tokenFactory: TokenFactory
Valore della proprietà
TokenFactory
Ereditato da Parser.tokenFactory
Dettagli metodo
alpha_nums()
alternation()
atom()
capture()
cc_atom()
cc_literal()
character_class()
digit()
digits()
element()
expr()
letter()
literal()
name()
non_capture()
non_close_paren()
non_close_parens()
number()
octal_char()
octal_digit()
option()
option_flag()
parse()
quantifier()
quantifier_type()
shared_atom()
shared_literal()
Dettagli dei metodi ereditati
action(RuleContext | undefined, number, number)
function action(_localctx: RuleContext | undefined, ruleIndex: number, actionIndex: number)
Parametri
- _localctx
-
RuleContext | undefined
- ruleIndex
-
number
- actionIndex
-
number
Ereditato da Recognizer.action
addErrorListener(ANTLRErrorListener<Token>)
function addErrorListener(listener: ANTLRErrorListener<Token>)
Parametri
- listener
-
ANTLRErrorListener<Token>
Ereditato da Recognizer.addErrorListener
addParseListener(ParseTreeListener)
Registra listener
per ricevere eventi durante il processo di analisi.
Per supportare trasformazioni grammaticali con mantenimento dell'output (inclusa la rimozione della ricorsione a sinistra, il factoring a sinistra automatizzato e la generazione di codice ottimizzata), le chiamate ai metodi del listener durante l'analisi possono differire sostanzialmente dalle chiamate effettuate da <xref:ParseTreeWalker%23DEFAULT> usate al termine dell'analisi. In particolare, gli eventi di ingresso e uscita delle regole possono verificarsi in un ordine diverso durante l'analisi rispetto al parser. Inoltre, le chiamate a determinati metodi di immissione delle regole possono essere omesse.
Con le eccezioni specifiche seguenti, le chiamate agli eventi del listener sono deterministiche, ad esempio per l'input identico le chiamate ai metodi del listener saranno uguali.
- Le modifiche alla grammatica usata per generare codice possono modificare il comportamento delle chiamate del listener.
- Le modifiche apportate alle opzioni della riga di comando passate a ANTLR 4 durante la generazione del parser possono modificare il comportamento delle chiamate del listener.
- La modifica della versione dello strumento ANTLR usata per generare il parser può modificare il comportamento delle chiamate del listener.
function addParseListener(listener: ParseTreeListener)
Parametri
- listener
-
ParseTreeListener
listener da aggiungere
Ereditato da Parser.addParseListener
compileParseTreePattern(string, number)
Metodo preferito per ottenere un modello ad albero. Ad esempio, di seguito è riportato un esempio di uso:
let t: ParseTree = parser.expr();
let p: ParseTreePattern = await parser.compileParseTreePattern("<ID>+0", MyParser.RULE_expr);
let m: ParseTreeMatch = p.match(t);
let id: string = m.get("ID");
function compileParseTreePattern(pattern: string, patternRuleIndex: number): Promise<ParseTreePattern>
Parametri
- pattern
-
string
- patternRuleIndex
-
number
Restituisce
Promise<ParseTreePattern>
Ereditato da Parser.compileParseTreePattern
compileParseTreePattern(string, number, Lexer)
Uguale a [int)](xref:%23compileParseTreePattern(String%2C) ma specificare un CommonRegexLexer anziché tentare di dedurrlo da questo parser.
function compileParseTreePattern(pattern: string, patternRuleIndex: number, lexer?: Lexer): Promise<ParseTreePattern>
Parametri
- pattern
-
string
- patternRuleIndex
-
number
- lexer
-
Lexer
Restituisce
Promise<ParseTreePattern>
Ereditato da Parser.compileParseTreePattern
consume()
Utilizzare e restituire il simbolo corrente .
Ad esempio, dato l'input seguente con A
come simbolo lookahead corrente, questa funzione sposta il cursore su B
e restituisce A
.
A B
^
Se il parser non è in modalità di recupero degli errori, il simbolo utilizzato viene aggiunto all'albero di analisi usando <xref:ParserRuleContext%23addChild(TerminalNode)>e <xref:ParseTreeListener%23visitTerminal> viene chiamato su qualsiasi listener di analisi. Se il parser è in modalità di recupero degli errori, il simbolo utilizzato viene aggiunto all'albero di analisi usando [Token)](xref:%23createErrorNode(ParserRuleContext%2C) <xref:ParserRuleContext%23addErrorNode(ErrorNode)> e <xref:ParseTreeListener%23visitErrorNode> viene chiamato su qualsiasi listener di analisi.
function consume(): Token
Restituisce
Token
Ereditato da Parser.consume
createErrorNode(ParserRuleContext, Token)
Come creare un nodo di errore, dato un token, associato a un elemento padre. In genere, il nodo di errore da creare non è una funzione dell'elemento padre.
function createErrorNode(parent: ParserRuleContext, t: Token): ErrorNode
Parametri
- parent
-
ParserRuleContext
- t
-
Token
Restituisce
ErrorNode
Ereditato da Parser.createErrorNode
createTerminalNode(ParserRuleContext, Token)
Come creare un nodo foglia del token associato a un elemento padre. In genere, il nodo del terminale da creare non è una funzione dell'elemento padre.
function createTerminalNode(parent: ParserRuleContext, t: Token): TerminalNode
Parametri
- parent
-
ParserRuleContext
- t
-
Token
Restituisce
TerminalNode
Ereditato da Parser.createTerminalNode
dumpDFA()
Per scopi di debug e altri scopi.
function dumpDFA()
Ereditato da Parser.dumpDFA
enterLeftFactoredRule(ParserRuleContext, number, number)
function enterLeftFactoredRule(localctx: ParserRuleContext, state: number, ruleIndex: number)
Parametri
- localctx
-
ParserRuleContext
- state
-
number
- ruleIndex
-
number
Ereditato da Parser.enterLeftFactoredRule
enterOuterAlt(ParserRuleContext, number)
function enterOuterAlt(localctx: ParserRuleContext, altNum: number)
Parametri
- localctx
-
ParserRuleContext
- altNum
-
number
Ereditato da Parser.enterOuterAlt
enterRecursionRule(ParserRuleContext, number, number, number)
function enterRecursionRule(localctx: ParserRuleContext, state: number, ruleIndex: number, precedence: number)
Parametri
- localctx
-
ParserRuleContext
- state
-
number
- ruleIndex
-
number
- precedence
-
number
Ereditato da Parser.enterRecursionRule
enterRule(ParserRuleContext, number, number)
Chiamato sempre dai parser generati al momento dell'immissione di una regola. Campo di accesso <xref:%23_ctx> ottenere il contesto corrente.
function enterRule(localctx: ParserRuleContext, state: number, ruleIndex: number)
Parametri
- localctx
-
ParserRuleContext
- state
-
number
- ruleIndex
-
number
Ereditato da Parser.enterRule
exitRule()
function exitRule()
Ereditato da Parser.exitRule
getATNWithBypassAlts()
L'ATN con alternative di bypass è costoso da creare in modo da crearlo in modo differire.
@ se il parser corrente non implementa la proprietà serializedATN
.
function getATNWithBypassAlts(): ATN
Restituisce
ATN
Ereditato da Parser.getATNWithBypassAlts
getDFAStrings()
Per scopi di debug e altri scopi.
function getDFAStrings(): string[]
Restituisce
string[]
Ereditato da Parser.getDFAStrings
getErrorHeader(RecognitionException)
Qual è l'intestazione dell'errore, in genere informazioni sulla posizione di riga/carattere?
function getErrorHeader(e: RecognitionException): string
Parametri
- e
-
RecognitionException
Restituisce
string
Ereditato da Recognizer.getErrorHeader
getErrorListenerDispatch()
function getErrorListenerDispatch(): ParserErrorListener
Restituisce
ParserErrorListener
Ereditato da Parser.getErrorListenerDispatch
getErrorListeners()
function getErrorListeners(): Array<ANTLRErrorListener<Token>>
Restituisce
Array<ANTLRErrorListener<Token>>
ereditato da Recognizer.getErrorListeners
getExpectedTokens()
Calcola il set di simboli di input che possono seguire rispettivamente lo stato e il contesto del parser corrente, come indicato rispettivamente da <xref:%23getState> e <xref:%23getContext>.
Vedere ATN#getExpectedTokens(int, RuleContext)
function getExpectedTokens(): IntervalSet
Restituisce
IntervalSet
Ereditato da Parser.getExpectedTokens
getExpectedTokensWithinCurrentRule()
function getExpectedTokensWithinCurrentRule(): IntervalSet
Restituisce
IntervalSet
Ereditato da Parser.getExpectedTokensWithinCurrentRule
getInvokingContext(number)
function getInvokingContext(ruleIndex: number): ParserRuleContext | undefined
Parametri
- ruleIndex
-
number
Restituisce
ParserRuleContext | undefined
Ereditato da Parser.getInvokingContext
getParseListeners()
function getParseListeners(): ParseTreeListener[]
Restituisce
ParseTreeListener[]
Ereditato da Parser.getParseListeners
getRuleIndex(string)
Ottenere l'indice di una regola (ad esempio, RULE_ruleName
campo) o -1 se non viene trovato.
function getRuleIndex(ruleName: string): number
Parametri
- ruleName
-
string
Restituisce
number
Ereditato da Parser.getRuleIndex
getRuleIndexMap()
Ottenere una mappa dai nomi delle regole agli indici delle regole. Usato per la compilazione di modelli di albero e XPath.
function getRuleIndexMap(): ReadonlyMap<string, number>
Restituisce
ReadonlyMap<string, number>
Ereditato da Recognizer.getRuleIndexMap
getRuleInvocationStack(RuleContext)
Return List<String> dei nomi delle regole nell'istanza del parser che conduce a una chiamata alla regola corrente. È possibile eseguire l'override se si desiderano altri dettagli, ad esempio le informazioni di file/riga di dove viene richiamata una regola ATN. Questo è molto utile per i messaggi di errore.
function getRuleInvocationStack(ctx?: RuleContext): string[]
Parametri
- ctx
-
RuleContext
Restituisce
string[]
Ereditato da Parser.getRuleInvocationStack
getTokenType(string)
function getTokenType(tokenName: string): number
Parametri
- tokenName
-
string
Restituisce
number
ereditato da Recognizer.getTokenType
getTokenTypeMap()
Ottenere una mappa dai nomi dei token ai tipi di token. Usato per la compilazione di modelli di albero e XPath.
function getTokenTypeMap(): ReadonlyMap<string, number>
Restituisce
ReadonlyMap<string, number>
Ereditato da Recognizer.getTokenTypeMap
inContext(string)
function inContext(context: string): boolean
Parametri
- context
-
string
Restituisce
boolean
Ereditato da Parser.inContext
isExpectedToken(number)
Controlla se symbol
può seguire lo stato corrente nell'ATN. Il comportamento di questo metodo è equivalente al seguente, ma viene implementato in modo che il set di follow con distinzione del contesto completo non debba essere costruito in modo esplicito.
return getExpectedTokens().contains(symbol);
function isExpectedToken(symbol: number): boolean
Parametri
- symbol
-
number
tipo di simbolo da controllare
Restituisce
boolean
true
se symbol
può seguire lo stato corrente in ATN; in caso contrario, false
.
Ereditato da Parser.isExpectedToken
match(number)
Trova la corrispondenza tra il simbolo di input corrente e ttype
. Se il tipo di simbolo corrisponde, <xref:ANTLRErrorStrategy%23reportMatch> e <xref:%23consume> vengono chiamati per completare il processo di corrispondenza.
Se il tipo di simbolo non corrisponde, <xref:ANTLRErrorStrategy%23recoverInline> viene chiamato sulla strategia di errore corrente per tentare il ripristino. Se <xref:%23getBuildParseTree> è true
e l'indice del token del simbolo restituito da <xref:ANTLRErrorStrategy%23recoverInline> è -1, il simbolo viene aggiunto all'albero di analisi chiamando [Token)](xref:%23createErrorNode(ParserRuleContext%2C) <xref:ParserRuleContext%23addErrorNode(ErrorNode)>.
function match(ttype: number): Token
Parametri
- ttype
-
number
tipo di token da associare
Restituisce
Token
simbolo corrispondente @ se il simbolo di input corrente non corrisponde ttype
e la strategia di errore non è riuscita a recuperare dal simbolo non corrispondente
Ereditato da Parser.match
matchWildcard()
Trova la corrispondenza con il simbolo di input corrente come carattere jolly. Se il tipo di simbolo corrisponde (ad esempio, ha un valore maggiore di 0), <xref:ANTLRErrorStrategy%23reportMatch> e <xref:%23consume> vengono chiamati per completare il processo di corrispondenza.
Se il tipo di simbolo non corrisponde, <xref:ANTLRErrorStrategy%23recoverInline> viene chiamato sulla strategia di errore corrente per tentare il ripristino. Se <xref:%23getBuildParseTree> è true
e l'indice del token del simbolo restituito da <xref:ANTLRErrorStrategy%23recoverInline> è -1, il simbolo viene aggiunto all'albero di analisi chiamando [Token)](xref:Parser%23createErrorNode(ParserRuleContext%2C) <xref:ParserRuleContext%23addErrorNode(ErrorNode)>.
function matchWildcard(): Token
Restituisce
Token
simbolo corrispondente @ se il simbolo di input corrente non corrisponde a un carattere jolly e la strategia di errore non è riuscita a recuperare dal simbolo non corrispondente
Ereditato da Parser.matchWildcard
notifyErrorListeners(string)
function notifyErrorListeners(msg: string)
Parametri
- msg
-
string
Ereditato da Parser.notifyErrorListeners
notifyErrorListeners(string, Token | null, RecognitionException | undefined)
function notifyErrorListeners(msg: string, offendingToken: Token | null, e: RecognitionException | undefined)
Parametri
- msg
-
string
- offendingToken
-
Token | null
- e
-
RecognitionException | undefined
Ereditato da Parser.notifyErrorListeners
precpred(RuleContext, number)
function precpred(localctx: RuleContext, precedence: number): boolean
Parametri
- localctx
-
RuleContext
- precedence
-
number
Restituisce
boolean
ereditato da Parser.precpred
pushNewRecursionContext(ParserRuleContext, number, number)
Come <xref:%23enterRule> ma per le regole ricorsive. Impostare il contesto corrente come elemento figlio dell'oggetto localctx in ingresso.
function pushNewRecursionContext(localctx: ParserRuleContext, state: number, ruleIndex: number)
Parametri
- localctx
-
ParserRuleContext
- state
-
number
- ruleIndex
-
number
Ereditato da Parser.pushNewRecursionContext
removeErrorListener(ANTLRErrorListener<Token>)
function removeErrorListener(listener: ANTLRErrorListener<Token>)
Parametri
- listener
-
ANTLRErrorListener<Token>
Ereditato da Recognizer.removeErrorListener
removeErrorListeners()
function removeErrorListeners()
Ereditato da Recognizer.removeErrorListeners
removeParseListener(ParseTreeListener)
Rimuovere listener
dall'elenco dei listener di analisi.
Se listener
è undefined
o non è stato aggiunto come listener di analisi, questo metodo non esegue alcuna operazione.
Vedere #addParseListener
function removeParseListener(listener: ParseTreeListener)
Parametri
- listener
-
ParseTreeListener
listener da rimuovere
Ereditato da Parser.removeParseListener
removeParseListeners()
Rimuovere tutti i listener di analisi.
Vedere #addParseListener
function removeParseListeners()
Ereditato da Parser.removeParseListeners
reset()
reimpostare lo stato del parser
function reset()
Ereditato da Parser.reset
reset(boolean)
function reset(resetInput: boolean)
Parametri
- resetInput
-
boolean
Ereditato da Parser.reset
sempred(RuleContext | undefined, number, number)
function sempred(_localctx: RuleContext | undefined, ruleIndex: number, actionIndex: number): boolean
Parametri
- _localctx
-
RuleContext | undefined
- ruleIndex
-
number
- actionIndex
-
number
Restituisce
boolean
ereditato da Recognizer.sempred
setProfile(boolean)
function setProfile(profile: boolean): Promise<void>
Parametri
- profile
-
boolean
Restituisce
Promise<void>
Ereditato da Parser.setProfile
unrollRecursionContexts(ParserRuleContext)
function unrollRecursionContexts(_parentctx: ParserRuleContext)
Parametri
- _parentctx
-
ParserRuleContext
Ereditato da Parser.unrollRecursionContexts