LGFileParser class
- Extends
-
Parser
Costruttori
LGFile |
Proprietà
Proprietà ereditate
atn | Ottenere l'oggetto serializedATN usato dal riconoscitore per la stima. |
build |
Tenere traccia degli <xref:ParserRuleContext> oggetti durante l'analisi e associarli usando l'elenco <xref:ParserRuleContext%23children> in modo che formi un albero di analisi. L'oggetto <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 questo viene sottoposto a Garbage Collection se nessuno contiene un riferimento. Punta verso l'alto, ma nessuno punta a esso. Quando si compilano alberi di analisi, si aggiungono tutti questi contesti all'elenco <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 restare in ascolto sugli eventi di ingresso e uscita della regola, nonché sulle corrispondenze di token. Questo è per il debug rapido e dirty. |
number |
Ottiene il numero di errori di sintassi segnalati durante l'analisi. Questo valore viene incrementato ogni volta <xref:%23notifyErrorListeners> che viene chiamato . Vedere #notifyErrorListeners |
parse |
|
precedence | Ottenere il livello di precedenza per la regola di precedenza più alta. |
rule |
|
source |
|
state | Indicare che lo stato interno del riconoscitore è stato modificato 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 regole di chiamata. Combinare questa operazione e sono disponibili informazioni di configurazione ATN complete. |
token |
Metodi
comment |
|
error |
|
file() | |
import |
|
option |
|
paragraph() | |
template |
|
template |
|
template |
|
template |
Metodi ereditati
action(Rule |
|
add |
|
add |
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 di albero. Di seguito è riportato un esempio di uso:
|
compile |
Uguale a [int)](xref:%23compileParseTreePattern(String%2C) ma specificare un LGFileLexer 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 ripristino degli errori, il simbolo utilizzato viene aggiunto all'albero di analisi usando <xref:ParserRuleContext%23addChild(TerminalNode)>e <xref:ParseTreeListener%23visitTerminal> viene chiamato su tutti i listener di analisi. Se il parser è in modalità di ripristino degli errori, il simbolo utilizzato viene aggiunto all'albero di analisi usando [Token)](xref:%23createErrorNode(ParserRuleContext%2C) e <xref:ParseTreeListener%23visitErrorNode> viene <xref:ParserRuleContext%23addErrorNode(ErrorNode)> 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 terminale da creare non è una funzione dell'elemento padre. |
dumpDFA() | Per scopi di debug e altri scopi. |
enter |
|
enter |
|
enter |
|
enter |
Viene sempre chiamato dai parser generati al momento dell'immissione di una regola. Il campo <xref:%23_ctx> di accesso ottiene il contesto corrente. |
exit |
|
get |
L'ATN con alternative bypass è costoso da creare in modo da crearlo in modo differire.
@ se il parser corrente non implementa la |
get |
Per scopi di debug e altri scopi. |
get |
Che cos'è l'intestazione di errore, in genere informazioni sulla posizione riga/carattere? |
get |
|
get |
|
get |
Calcola il set di simboli di input che potrebbero seguire rispettivamente lo stato e il contesto del parser corrente, come specificato da <xref:%23getState> e <xref:%23getContext>. Vedere ATN#getExpectedTokens(int, RuleContext) |
get |
|
get |
|
get |
|
get |
Ottiene l'indice di una regola (ad esempio, |
get |
Ottenere una mappa dai nomi delle regole agli indici delle regole. Usato per la compilazione dei criteri di struttura ad albero e XPath. |
get |
Restituisce la stringa> elenco<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 sul file o sulla riga della posizione in cui viene richiamata una regola atn. Ciò è molto utile per i messaggi di errore. |
get |
|
get |
Ottenere una mappa dai nomi dei token ai tipi di token. Usato per la compilazione dei criteri di struttura ad albero e XPath. |
in |
|
is |
Controlla se è possibile seguire o meno
|
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> viene chiamato 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
LGFileParser(TokenStream)
new LGFileParser(input: TokenStream)
Parametri
- input
-
TokenStream
Dettagli proprietà
COMMENT
public static COMMENT: 3 = 3
Valore della proprietà
3
ESCAPE_CHARACTER
public static ESCAPE_CHARACTER: 11 = 11
Valore della proprietà
11
grammarFileName
string grammarFileName
Valore della proprietà
string
IMPORT
public static IMPORT: 4 = 4
Valore della proprietà
4
INLINE_MULTILINE
public static INLINE_MULTILINE: 6 = 6
Valore della proprietà
6
INVALID_LINE
public static INVALID_LINE: 9 = 9
Valore della proprietà
9
MULTILINE_PREFIX
public static MULTILINE_PREFIX: 7 = 7
Valore della proprietà
7
MULTILINE_SUFFIX
public static MULTILINE_SUFFIX: 10 = 10
Valore della proprietà
10
MULTILINE_TEXT
public static MULTILINE_TEXT: 12 = 12
Valore della proprietà
12
NEWLINE
public static NEWLINE: 1 = 1
Valore della proprietà
1
OPTION
public static OPTION: 2 = 2
Valore della proprietà
2
ruleNames
public static ruleNames: string[] = [
"file", "paragraph", "commentDefinition", "importDefinition", "optionDefinition",
"errorDefinition", "templateDefinition", "templateNameLine", "templateBody",
"templateBodyLine",
]
Valore della proprietà
string[]
ruleNames
string[] ruleNames
Valore della proprietà
string[]
RULE_commentDefinition
public static RULE_commentDefinition: 2 = 2
Valore della proprietà
2
RULE_errorDefinition
public static RULE_errorDefinition: 5 = 5
Valore della proprietà
5
RULE_file
public static RULE_file: 0 = 0
Valore della proprietà
0
RULE_importDefinition
public static RULE_importDefinition: 3 = 3
Valore della proprietà
3
RULE_optionDefinition
public static RULE_optionDefinition: 4 = 4
Valore della proprietà
4
RULE_paragraph
public static RULE_paragraph: 1 = 1
Valore della proprietà
1
RULE_templateBody
public static RULE_templateBody: 8 = 8
Valore della proprietà
8
RULE_templateBodyLine
public static RULE_templateBodyLine: 9 = 9
Valore della proprietà
9
RULE_templateDefinition
public static RULE_templateDefinition: 6 = 6
Valore della proprietà
6
RULE_templateNameLine
public static RULE_templateNameLine: 7 = 7
Valore della proprietà
7
serializedATN
string serializedATN
Valore della proprietà
string
TEMPLATE_BODY
public static TEMPLATE_BODY: 8 = 8
Valore della proprietà
8
TEMPLATE_NAME_LINE
public static TEMPLATE_NAME_LINE: 5 = 5
Valore della proprietà
5
VOCABULARY
public static VOCABULARY: Vocabulary = new VocabularyImpl(LGFileParser._LITERAL_NAMES, LGFileParser._SYMBOLIC_NAMES, [])
Valore della proprietà
Vocabulary
vocabulary
Vocabulary vocabulary
Valore della proprietà
Vocabulary
Dettagli proprietà ereditate
atn
Ottenere l'oggetto serializedATN usato dal riconoscitore per la stima.
atn: ATN
Valore della proprietà
ATN
Ereditato da Recognizer.atn
buildParseTree
Tenere traccia degli <xref:ParserRuleContext> oggetti durante l'analisi e associarli usando l'elenco <xref:ParserRuleContext%23children> in modo che formi un albero di analisi. L'oggetto <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 questo viene sottoposto a Garbage Collection se nessuno contiene un riferimento. Punta verso l'alto, ma nessuno punta a esso.
Quando si compilano alberi di analisi, si aggiungono tutti questi contesti all'elenco <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 restare in ascolto sugli eventi di ingresso e uscita della regola, nonché sulle corrispondenze di token. Questo è per il debug rapido e dirty.
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 <xref:%23notifyErrorListeners> che viene chiamato .
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 lo stato interno del riconoscitore è stato modificato 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 regole di chiamata. 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
commentDefinition()
errorDefinition()
file()
importDefinition()
optionDefinition()
paragraph()
templateBody()
templateBodyLine()
templateDefinition()
templateNameLine()
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)
listener
Registra per ricevere eventi durante il processo di analisi.
Per supportare trasformazioni grammaticali che conservano l'output (incluse, ma non solo, 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 dopo <xref:ParseTreeWalker%23DEFAULT> il completamento 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 il codice possono modificare il comportamento delle chiamate del listener.
- Le modifiche 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 di albero. 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 LGFileLexer 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
il simbolo lookahead corrente, questa funzione sposta il cursore su B
e restituisce A
.
A B
^
Se il parser non è in modalità di ripristino degli errori, il simbolo utilizzato viene aggiunto all'albero di analisi usando <xref:ParserRuleContext%23addChild(TerminalNode)>e <xref:ParseTreeListener%23visitTerminal> viene chiamato su tutti i listener di analisi. Se il parser è in modalità di ripristino degli errori, il simbolo utilizzato viene aggiunto all'albero di analisi usando [Token)](xref:%23createErrorNode(ParserRuleContext%2C) e <xref:ParseTreeListener%23visitErrorNode> viene <xref:ParserRuleContext%23addErrorNode(ErrorNode)> 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 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)
Viene sempre chiamato dai parser generati al momento dell'immissione di una regola. Il campo <xref:%23_ctx> di accesso ottiene 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 bypass è costoso da creare in modo da crearlo in modo differire.
@ se il parser corrente non implementa la serializedATN
proprietà .
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)
Che cos'è l'intestazione di errore, in genere informazioni sulla posizione 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 potrebbero seguire rispettivamente lo stato e il contesto del parser corrente, come specificato 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)
Ottiene 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 dei criteri di struttura ad albero e XPath.
function getRuleIndexMap(): ReadonlyMap<string, number>
Restituisce
ReadonlyMap<string, number>
Ereditato da Recognizer.getRuleIndexMap
getRuleInvocationStack(RuleContext)
Restituisce la stringa> elenco<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 sul file o sulla riga della posizione in cui viene richiamata una regola atn. Ciò è 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 dei criteri di struttura ad 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 è possibile seguire o meno symbol
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 nell'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> viene chiamato 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), quindi <xref:ParserRuleContext%23addErrorNode(ErrorNode)>.
function match(ttype: number): Token
Parametri
- ttype
-
number
tipo di token da trovare
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> viene chiamato 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) e quindi <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
è o non è undefined
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