ExpressionAntlrParser class
- Extends
-
Parser
Costruttori
Expression |
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) | |
set |
|
unroll |
Dettagli costruttore
ExpressionAntlrParser(TokenStream)
new ExpressionAntlrParser(input: TokenStream)
Parametri
- input
-
TokenStream
Dettagli proprietà
ARROW
public static ARROW: 27 = 27
Valore della proprietà
27
ASTERISK
public static ASTERISK: 6 = 6
Valore della proprietà
6
CLOSE_BRACKET
public static CLOSE_BRACKET: 19 = 19
Valore della proprietà
19
CLOSE_CURLY_BRACKET
public static CLOSE_CURLY_BRACKET: 24 = 24
Valore della proprietà
24
CLOSE_SQUARE_BRACKET
public static CLOSE_SQUARE_BRACKET: 22 = 22
Valore della proprietà
22
COLON
public static COLON: 26 = 26
Valore della proprietà
26
COMMA
public static COMMA: 25 = 25
Valore della proprietà
25
DOT
public static DOT: 20 = 20
Valore della proprietà
20
DOUBLE_AND
public static DOUBLE_AND: 12 = 12
Valore della proprietà
12
DOUBLE_EQUAL
public static DOUBLE_EQUAL: 9 = 9
Valore della proprietà
9
DOUBLE_VERTICAL_CYLINDER
public static DOUBLE_VERTICAL_CYLINDER: 13 = 13
Valore della proprietà
13
ESCAPE_CHARACTER
public static ESCAPE_CHARACTER: 37 = 37
Valore della proprietà
37
grammarFileName
string grammarFileName
Valore della proprietà
string
IDENTIFIER
public static IDENTIFIER: 32 = 32
Valore della proprietà
32
INVALID_TOKEN_DEFAULT_MODE
public static INVALID_TOKEN_DEFAULT_MODE: 35 = 35
Valore della proprietà
35
LESS_OR_EQUAl
public static LESS_OR_EQUAl: 16 = 16
Valore della proprietà
16
LESS_THAN
public static LESS_THAN: 14 = 14
Valore della proprietà
14
MORE_OR_EQUAL
public static MORE_OR_EQUAL: 17 = 17
Valore della proprietà
17
MORE_THAN
public static MORE_THAN: 15 = 15
Valore della proprietà
15
NEWLINE
public static NEWLINE: 33 = 33
Valore della proprietà
33
NON
public static NON: 4 = 4
Valore della proprietà
4
NOT_EQUAL
public static NOT_EQUAL: 10 = 10
Valore della proprietà
10
NULL_COALESCE
public static NULL_COALESCE: 28 = 28
Valore della proprietà
28
NUMBER
public static NUMBER: 30 = 30
Valore della proprietà
30
OPEN_BRACKET
public static OPEN_BRACKET: 18 = 18
Valore della proprietà
18
OPEN_CURLY_BRACKET
public static OPEN_CURLY_BRACKET: 23 = 23
Valore della proprietà
23
OPEN_SQUARE_BRACKET
public static OPEN_SQUARE_BRACKET: 21 = 21
Valore della proprietà
21
PERCENT
public static PERCENT: 8 = 8
Valore della proprietà
8
PLUS
public static PLUS: 2 = 2
Valore della proprietà
2
QUESTION_MARK
public static QUESTION_MARK: 29 = 29
Valore della proprietà
29
ruleNames
public static ruleNames: string[] = [
"file", "expression", "primaryExpression", "stringInterpolation", "textContent",
"argsList", "lambda", "keyValuePairList", "keyValuePair", "key",
]
Valore della proprietà
string[]
ruleNames
string[] ruleNames
Valore della proprietà
string[]
RULE_argsList
public static RULE_argsList: 5 = 5
Valore della proprietà
5
RULE_expression
public static RULE_expression: 1 = 1
Valore della proprietà
1
RULE_file
public static RULE_file: 0 = 0
Valore della proprietà
0
RULE_key
public static RULE_key: 9 = 9
Valore della proprietà
9
RULE_keyValuePair
public static RULE_keyValuePair: 8 = 8
Valore della proprietà
8
RULE_keyValuePairList
public static RULE_keyValuePairList: 7 = 7
Valore della proprietà
7
RULE_lambda
public static RULE_lambda: 6 = 6
Valore della proprietà
6
RULE_primaryExpression
public static RULE_primaryExpression: 2 = 2
Valore della proprietà
2
RULE_stringInterpolation
public static RULE_stringInterpolation: 3 = 3
Valore della proprietà
3
RULE_textContent
public static RULE_textContent: 4 = 4
Valore della proprietà
4
serializedATN
string serializedATN
Valore della proprietà
string
SINGLE_AND
public static SINGLE_AND: 11 = 11
Valore della proprietà
11
SLASH
public static SLASH: 7 = 7
Valore della proprietà
7
STRING
public static STRING: 34 = 34
Valore della proprietà
34
STRING_INTERPOLATION_START
public static STRING_INTERPOLATION_START: 1 = 1
Valore della proprietà
1
SUBSTRACT
public static SUBSTRACT: 3 = 3
Valore della proprietà
3
TEMPLATE
public static TEMPLATE: 36 = 36
Valore della proprietà
36
TEXT_CONTENT
public static TEXT_CONTENT: 38 = 38
Valore della proprietà
38
VOCABULARY
public static VOCABULARY: Vocabulary = new VocabularyImpl(ExpressionAntlrParser._LITERAL_NAMES, ExpressionAntlrParser._SYMBOLIC_NAMES, [])
Valore della proprietà
Vocabulary
vocabulary
Vocabulary vocabulary
Valore della proprietà
Vocabulary
WHITESPACE
public static WHITESPACE: 31 = 31
Valore della proprietà
31
XOR
public static XOR: 5 = 5
Valore della proprietà
5
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
argsList()
expression()
expression(number)
function expression(_p: number): ExpressionContext
Parametri
- _p
-
number
Restituisce
file()
key()
keyValuePair()
keyValuePairList()
lambda()
primaryExpression()
primaryExpression(number)
function primaryExpression(_p: number): PrimaryExpressionContext
Parametri
- _p
-
number
Restituisce
sempred(RuleContext, number, number)
function sempred(_localctx: RuleContext, ruleIndex: number, predIndex: number): boolean
Parametri
- _localctx
-
RuleContext
- ruleIndex
-
number
- predIndex
-
number
Restituisce
boolean
stringInterpolation()
textContent()
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
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