KeyContext class
- Extends
-
ParserRuleContext
Costruttori
Key |
Proprietà
rule |
Proprietà ereditate
alt |
Impostare il numero alternativo esterno per questo nodo di contesto. L'implementazione predefinita non consente di evitare il sovraccarico del campo di backup per gli alberi che non ne hanno bisogno. Creare una sottoclasse di ParserRuleContext con il campo di backup e impostare il contesto di opzioneSuperClass. @since 4.5.3 |
child |
|
children | Se si esegue il debug o si crea un albero di analisi per un visitatore, è necessario tenere traccia di tutti i token e le chiamate alle regole associate al contesto di questa regola. Questa operazione è vuota per l'analisi della constr dell'albero w/o. operazione perché non è necessario tenere traccia dei dettagli relativi alla modalità di analisi di questa regola. |
exception | Eccezione che ha costretto questa regola a restituire. Se la regola è stata completata correttamente, si tratta di |
invoking |
|
is |
Un contesto è vuoto se non vi è stato richiamato; significa che nessuno ha chiamato contesto corrente. |
parent | |
payload | |
rule |
|
source |
|
start | Ottenere il token iniziale in questo contesto. Si noti che l'intervallo compreso tra inizio e arresto è inclusivo, quindi per le regole che non usano nulla (ad esempio, zero lunghezza o produzione di errori) questo token potrebbe superare l'arresto. |
stop | Ottenere il token finale in questo contesto. Si noti che l'intervallo compreso tra l'inizio e l'arresto è inclusivo, quindi per le regole che non usano nulla (ad esempio, zero length o error productions) questo token può precedere l'inizio. |
text | Restituisce il testo combinato di tutti i nodi figlio. Questo metodo considera solo i token aggiunti all'albero di analisi. Poiché i token nei canali nascosti (ad esempio spazi vuoti o commenti) non vengono aggiunti agli alberi di analisi, non verranno visualizzati nell'output di questo metodo. |
Metodi
accept<Result>(Expression |
|
enter |
|
exit |
|
IDENTIFIER() | |
STRING() |
Metodi ereditati
add |
Aggiungere un nodo albero di analisi a questo oggetto come elemento figlio. Funziona per i nodi interni e foglia. Non imposta il collegamento padre; altri metodi add devono eseguire questa operazione. Altri metodi addChild chiamano questo metodo. Non è possibile impostare il puntatore padre del nodo in ingresso perché le interfacce esistenti non hanno un metodo setParent() e non si vuole interrompere la compatibilità con le versioni precedenti. @since 4.7 |
add |
|
add |
Aggiungere un nodo foglia del token e forzare l'elemento padre a essere questo nodo. |
add |
Aggiungere un elemento figlio a questo nodo in base a matchedToken. Crea un TerminalNodeImpl anziché usare [Token)](xref:Parser%23createTerminalNode(ParserRuleContext%2C). Lo sto lasciando per compatibilità, ma il parser non usa più questo. |
add |
Aggiungere un nodo di errore figlio e forzare il relativo padre a essere questo nodo. |
add |
Aggiungere un elemento figlio a questo nodo in base a badToken. Crea un ErrorNode anziché usare [Token)](xref:Parser%23createErrorNode(ParserRuleContext%2C). Lo sto lasciando per compatibilità, ma il parser non usa più questo. |
copy |
COPIARe un ctx (non si usa intenzionalmente il costruttore di copia) per evitare confusione con la creazione di nodo con padre. Non copia elementi figlio (tranne le foglie di errore). Viene usato nel codice del parser generato per scorrere un nodo XContext generico per la regola X a un oggetto YContext per l'etichetta alt Y. In questo senso, non è veramente una funzione di copia generica. Se si esegue una sincronizzazione degli errori() all'inizio di una regola, è possibile aggiungere nodi di errore al XContext generico, in modo che questa funzione debba copiare tali nodi in YContext, così come gli altri vengono persi! |
depth() | |
empty |
|
get |
|
get |
|
get |
|
get |
|
get |
|
get |
|
get |
|
remove |
Usato da enterOuterAlt per inserire un oggetto RuleContext aggiunto in precedenza come è stata immessa una regola. Se è presente un'etichetta #, sarà necessario rimuovere l'oggetto ruleContext generico. |
set |
|
to |
Usato per il debug delle informazioni sul contesto delle regole durante l'analisi, non tanto per il debug ATN |
to |
|
to |
|
to |
|
to |
|
to |
|
to |
|
to |
Stampare un intero albero, non solo un nodo, in formato LISP (root child1 .. childN). Stampare solo un nodo se si tratta di una foglia. È necessario conoscere il riconoscimento in modo da poter ottenere i nomi delle regole. |
to |
Stampare un intero albero, non solo un nodo, in formato LISP (root child1 .. childN). Stampare solo un nodo se si tratta di una foglia. |
try |
|
try |
|
try |
Dettagli costruttore
KeyContext(ParserRuleContext | undefined, number)
new KeyContext(parent: ParserRuleContext | undefined, invokingState: number)
Parametri
- parent
-
ParserRuleContext | undefined
- invokingState
-
number
Dettagli proprietà
ruleIndex
number ruleIndex
Valore della proprietà
number
Dettagli proprietà ereditate
altNumber
Impostare il numero alternativo esterno per questo nodo di contesto. L'implementazione predefinita non consente di evitare il sovraccarico del campo di backup per gli alberi che non ne hanno bisogno. Creare una sottoclasse di ParserRuleContext con il campo di backup e impostare il contesto di opzioneSuperClass. @since 4.5.3
altNumber: number
Valore della proprietà
number
Ereditato da RuleContext.altNumber
childCount
childCount: number
Valore della proprietà
number
Ereditato da ParserRuleContext.childCount
children
Se si esegue il debug o si crea un albero di analisi per un visitatore, è necessario tenere traccia di tutti i token e le chiamate alle regole associate al contesto di questa regola. Questa operazione è vuota per l'analisi della constr dell'albero w/o. operazione perché non è necessario tenere traccia dei dettagli relativi alla modalità di analisi di questa regola.
children?: ParseTree[]
Valore della proprietà
ParseTree[]
Ereditato da ParserRuleContext.children
exception
Eccezione che ha costretto questa regola a restituire. Se la regola è stata completata correttamente, si tratta di undefined
.
exception?: RecognitionException
Valore della proprietà
RecognitionException
Ereditato da ParserRuleContext.exception
invokingState
invokingState: number
Valore della proprietà
number
Ereditato da RuleContext.invokingState
isEmpty
Un contesto è vuoto se non vi è stato richiamato; significa che nessuno ha chiamato contesto corrente.
isEmpty: boolean
Valore della proprietà
boolean
Ereditato da RuleContext.isEmpty
parent
parent: ParserRuleContext | undefined
Valore della proprietà
ParserRuleContext | undefined
Ereditato da ParserRuleContext.parent
payload
payload: RuleContext
Valore della proprietà
RuleContext
Ereditato da RuleContext.payload
ruleContext
ruleContext: this
Valore della proprietà
this
Ereditato da ParserRuleContext.ruleContext
sourceInterval
sourceInterval: Interval
Valore della proprietà
Interval
Ereditato da ParserRuleContext.sourceInterval
start
Ottenere il token iniziale in questo contesto. Si noti che l'intervallo compreso tra inizio e arresto è inclusivo, quindi per le regole che non usano nulla (ad esempio, zero lunghezza o produzione di errori) questo token potrebbe superare l'arresto.
start: Token
Valore della proprietà
Token
Ereditato da ParserRuleContext.start
stop
Ottenere il token finale in questo contesto. Si noti che l'intervallo compreso tra l'inizio e l'arresto è inclusivo, quindi per le regole che non usano nulla (ad esempio, zero length o error productions) questo token può precedere l'inizio.
stop: Token | undefined
Valore della proprietà
Token | undefined
Ereditato da ParserRuleContext.stop
text
Restituisce il testo combinato di tutti i nodi figlio. Questo metodo considera solo i token aggiunti all'albero di analisi. Poiché i token nei canali nascosti (ad esempio spazi vuoti o commenti) non vengono aggiunti agli alberi di analisi, non verranno visualizzati nell'output di questo metodo.
text: string
Valore della proprietà
string
Ereditato da RuleContext.text
Dettagli metodo
accept<Result>(ExpressionAntlrParserVisitor<Result>)
function accept<Result>(visitor: ExpressionAntlrParserVisitor<Result>): Result
Parametri
- visitor
-
ExpressionAntlrParserVisitor<Result>
Restituisce
Result
enterRule(ExpressionAntlrParserListener)
function enterRule(listener: ExpressionAntlrParserListener)
Parametri
- listener
- ExpressionAntlrParserListener
exitRule(ExpressionAntlrParserListener)
function exitRule(listener: ExpressionAntlrParserListener)
Parametri
- listener
- ExpressionAntlrParserListener
IDENTIFIER()
function IDENTIFIER(): TerminalNode | undefined
Restituisce
TerminalNode | undefined
STRING()
function STRING(): TerminalNode | undefined
Restituisce
TerminalNode | undefined
Dettagli dei metodi ereditati
addAnyChild<T>(T)
Aggiungere un nodo albero di analisi a questo oggetto come elemento figlio. Funziona per i nodi interni e foglia. Non imposta il collegamento padre; altri metodi add devono eseguire questa operazione. Altri metodi addChild chiamano questo metodo. Non è possibile impostare il puntatore padre del nodo in ingresso perché le interfacce esistenti non hanno un metodo setParent() e non si vuole interrompere la compatibilità con le versioni precedenti.
@since 4.7
function addAnyChild<T>(t: T): T
Parametri
- t
-
T
Restituisce
T
Ereditato da ParserRuleContext.addAnyChild
addChild(RuleContext)
function addChild(ruleInvocation: RuleContext)
Parametri
- ruleInvocation
-
RuleContext
Ereditato da ParserRuleContext.addChild
addChild(TerminalNode)
Aggiungere un nodo foglia del token e forzare l'elemento padre a essere questo nodo.
function addChild(t: TerminalNode)
Parametri
- t
-
TerminalNode
Ereditato da ParserRuleContext.addChild
addChild(Token)
Avviso
Questa API è ora deprecata.
Use another overload instead.
Aggiungere un elemento figlio a questo nodo in base a matchedToken. Crea un TerminalNodeImpl anziché usare [Token)](xref:Parser%23createTerminalNode(ParserRuleContext%2C). Lo sto lasciando per compatibilità, ma il parser non usa più questo.
function addChild(matchedToken: Token): TerminalNode
Parametri
- matchedToken
-
Token
Restituisce
TerminalNode
Ereditato da ParserRuleContext.addChild
addErrorNode(ErrorNode)
Aggiungere un nodo di errore figlio e forzare il relativo padre a essere questo nodo.
function addErrorNode(errorNode: ErrorNode): ErrorNode
Parametri
- errorNode
-
ErrorNode
Restituisce
ErrorNode
Ereditato da ParserRuleContext.addErrorNode
addErrorNode(Token)
Avviso
Questa API è ora deprecata.
Use another overload instead.
Aggiungere un elemento figlio a questo nodo in base a badToken. Crea un ErrorNode anziché usare [Token)](xref:Parser%23createErrorNode(ParserRuleContext%2C). Lo sto lasciando per compatibilità, ma il parser non usa più questo.
function addErrorNode(badToken: Token): ErrorNode
Parametri
- badToken
-
Token
Restituisce
ErrorNode
Ereditato da ParserRuleContext.addErrorNode
copyFrom(ParserRuleContext)
COPIARe un ctx (non si usa intenzionalmente il costruttore di copia) per evitare confusione con la creazione di nodo con padre. Non copia elementi figlio (tranne le foglie di errore). Viene usato nel codice del parser generato per scorrere un nodo XContext generico per la regola X a un oggetto YContext per l'etichetta alt Y. In questo senso, non è veramente una funzione di copia generica.
Se si esegue una sincronizzazione degli errori() all'inizio di una regola, è possibile aggiungere nodi di errore al XContext generico, in modo che questa funzione debba copiare tali nodi in YContext, così come gli altri vengono persi!
function copyFrom(ctx: ParserRuleContext)
Parametri
- ctx
-
ParserRuleContext
Ereditato da ParserRuleContext.copyFrom
depth()
function depth(): number
Restituisce
number
Ereditato da RuleContext.depth
emptyContext()
static function emptyContext(): ParserRuleContext
Restituisce
ParserRuleContext
Ereditato da ParserRuleContext.emptyContext
getChild(number)
function getChild(i: number): ParseTree
Parametri
- i
-
number
Restituisce
ParseTree
Ereditato da ParserRuleContext.getChild
getChild<T>(number, { })
function getChild<T>(i: number, ctxType: { }): T
Parametri
- i
-
number
- ctxType
-
{ }
Restituisce
T
Ereditato da ParserRuleContext.getChild
getChildContext(RuleContext, number)
static function getChildContext(parent: RuleContext, invokingState: number): RuleContext
Parametri
- parent
-
RuleContext
- invokingState
-
number
Restituisce
RuleContext
Ereditato da RuleContext.getChildContext
getRuleContext<T>(number, { })
function getRuleContext<T>(i: number, ctxType: { }): T
Parametri
- i
-
number
- ctxType
-
{ }
Restituisce
T
Ereditato da ParserRuleContext.getRuleContext
getRuleContexts<T>({ })
function getRuleContexts<T>(ctxType: { }): T[]
Parametri
- ctxType
-
{ }
Restituisce
T[]
Ereditato da ParserRuleContext.getRuleContexts
getToken(number, number)
function getToken(ttype: number, i: number): TerminalNode
Parametri
- ttype
-
number
- i
-
number
Restituisce
TerminalNode
Ereditato da ParserRuleContext.getToken
getTokens(number)
function getTokens(ttype: number): TerminalNode[]
Parametri
- ttype
-
number
Restituisce
TerminalNode[]
Ereditato da ParserRuleContext.getTokens
removeLastChild()
Usato da enterOuterAlt per inserire un oggetto RuleContext aggiunto in precedenza come è stata immessa una regola. Se è presente un'etichetta #, sarà necessario rimuovere l'oggetto ruleContext generico.
function removeLastChild()
Ereditato da ParserRuleContext.removeLastChild
setParent(RuleContext)
function setParent(parent: RuleContext)
Parametri
- parent
-
RuleContext
Ereditato da RuleContext.setParent
toInfoString(Parser)
Usato per il debug delle informazioni sul contesto delle regole durante l'analisi, non tanto per il debug ATN
function toInfoString(recognizer: Parser): string
Parametri
- recognizer
-
Parser
Restituisce
string
Ereditato da ParserRuleContext.toInfoString
toString()
function toString(): string
Restituisce
string
Ereditato da RuleContext.toString
toString(Recognizer<any, any> | undefined)
function toString(recog: Recognizer<any, any> | undefined): string
Parametri
- recog
-
Recognizer<any, any> | undefined
Restituisce
string
Ereditato da RuleContext.toString
toString(Recognizer<any, any> | undefined, RuleContext | undefined)
function toString(recog: Recognizer<any, any> | undefined, stop: RuleContext | undefined): string
Parametri
- recog
-
Recognizer<any, any> | undefined
- stop
-
RuleContext | undefined
Restituisce
string
Ereditato da RuleContext.toString
toString(string[] | undefined)
function toString(ruleNames: string[] | undefined): string
Parametri
- ruleNames
-
string[] | undefined
Restituisce
string
Ereditato da RuleContext.toString
toString(string[] | undefined, RuleContext | undefined)
function toString(ruleNames: string[] | undefined, stop: RuleContext | undefined): string
Parametri
- ruleNames
-
string[] | undefined
- stop
-
RuleContext | undefined
Restituisce
string
Ereditato da RuleContext.toString
toStringTree()
function toStringTree(): string
Restituisce
string
Ereditato da RuleContext.toStringTree
toStringTree(Parser)
Stampare un intero albero, non solo un nodo, in formato LISP (root child1 .. childN). Stampare solo un nodo se si tratta di una foglia. È necessario conoscere il riconoscimento in modo da poter ottenere i nomi delle regole.
function toStringTree(recog: Parser): string
Parametri
- recog
-
Parser
Restituisce
string
Ereditato da RuleContext.toStringTree
toStringTree(string[] | undefined)
Stampare un intero albero, non solo un nodo, in formato LISP (root child1 .. childN). Stampare solo un nodo se si tratta di una foglia.
function toStringTree(ruleNames: string[] | undefined): string
Parametri
- ruleNames
-
string[] | undefined
Restituisce
string
Ereditato da RuleContext.toStringTree
tryGetChild<T>(number, { })
function tryGetChild<T>(i: number, ctxType: { }): T | undefined
Parametri
- i
-
number
- ctxType
-
{ }
Restituisce
T | undefined
Ereditato da ParserRuleContext.tryGetChild
tryGetRuleContext<T>(number, { })
function tryGetRuleContext<T>(i: number, ctxType: { }): T | undefined
Parametri
- i
-
number
- ctxType
-
{ }
Restituisce
T | undefined
Ereditato da ParserRuleContext.tryGetRuleContext
tryGetToken(number, number)
function tryGetToken(ttype: number, i: number): TerminalNode | undefined
Parametri
- ttype
-
number
- i
-
number
Restituisce
TerminalNode | undefined
Ereditato da ParserRuleContext.tryGetToken