KeyValueStructureValueContext class
- Extends
-
ParserRuleContext
Constructeurs
Key |
Propriétés
rule |
Propriétés héritées
alt |
Définissez le numéro d’alternative externe pour ce nœud de contexte. L’implémentation par défaut ne permet pas d’éviter la surcharge des champs de stockage pour les arborescences qui n’en ont pas besoin. Créez une sous-classe de ParserRuleContext avec le champ de stockage et définissez le contexte d’option ContextSuperClass. @since 4.5.3 |
child |
|
children | Si nous déboguez ou créons une arborescence d’analyse pour un visiteur, nous devons suivre tous les jetons et appels de règle associés au contexte de cette règle. Cela est vide pour l’analyse de la chaîne d’arborescence w/o. opération parce que nous n’avons pas besoin de suivre les détails sur la façon dont nous analysons cette règle. |
exception | Exception qui a forcé ce retour de cette règle. Si la règle s’est terminée correctement, il s’agit |
invoking |
|
is |
Un contexte est vide s’il n’y a pas d’état d’appel ; ce qui signifie que personne n’a appelé contexte actuel. |
parent | |
payload | |
rule |
|
source |
|
start | Obtenez le jeton initial dans ce contexte. Notez que la plage comprise entre le début et l’arrêt est inclusive. Par conséquent, pour les règles qui ne consomment rien (par exemple, les productions de longueur nulle ou d’erreur) ce jeton peut dépasser l’arrêt. |
stop | Obtenez le jeton final dans ce contexte. Notez que la plage comprise entre le début et l’arrêt est inclusive. Par conséquent, pour les règles qui ne consomment rien (par exemple, les productions de longueur nulle ou d’erreur), ce jeton peut précéder le début. |
text | Retournez le texte combiné de tous les nœuds enfants. Cette méthode considère uniquement les jetons qui ont été ajoutés à l’arborescence d’analyse. Étant donné que les jetons sur les canaux masqués (par exemple, les espaces blancs ou les commentaires) ne sont pas ajoutés aux arborescences d’analyse, ils n’apparaissent pas dans la sortie de cette méthode. |
Méthodes
Méthodes héritées
add |
Ajoutez un nœud d’arborescence d’analyse à ce nœud en tant qu’enfant. Fonctionne pour les nœuds internes et feuilles. Ne définit pas de lien parent ; d’autres méthodes d’ajout doivent le faire. D’autres méthodes addChild appellent ceci. Nous ne pouvons pas définir le pointeur parent du nœud entrant, car les interfaces existantes n’ont pas de méthode setParent() et je ne veux pas rompre la compatibilité descendante pour cela. @since 4.7 |
add |
|
add |
Ajoutez un nœud feuille de jeton enfant et forcez son parent à être ce nœud. |
add |
Ajoutez un enfant à ce nœud en fonction de matchedToken. Il crée un TerminalNodeImpl plutôt que d’utiliser [Token)](xref :Parser%23createTerminalNode(ParserRuleContext%2C). Je laisse cela pour la compatibilité, mais l’analyseur n’utilise plus cela. |
add |
Ajoutez un enfant de nœud d’erreur et forcez son parent à être ce nœud. |
add |
Ajoutez un enfant à ce nœud en fonction de badToken. Il crée un ErrorNode plutôt que d’utiliser [Token)](xref :Parser%23createErrorNode(ParserRuleContext%2C). Je laisse cela pour la compatibilité, mais l’analyseur n’utilise plus cela. |
copy |
COPIEz un ctx (je n’utilise pas délibérément le constructeur de copie) pour éviter toute confusion avec la création d’un nœud avec le parent. Ne copie pas les enfants (sauf les feuilles d’erreur). Cela est utilisé dans le code d’analyseur généré pour retourner un nœud XContext générique pour la règle X à un YContext pour l’étiquette de remplacement Y. Dans ce sens, il n’est pas vraiment une fonction de copie générique. Si nous effectuons une synchronisation d’erreurs au début d’une règle, nous pouvons ajouter des nœuds d’erreur au XContext générique afin que cette fonction puisse copier ces nœuds dans YContext. |
depth() | |
empty |
|
get |
|
get |
|
get |
|
get |
|
get |
|
get |
|
get |
|
remove |
Utilisé par enterOuterAlt pour extraire un RuleContext précédemment ajouté lors de l’entrée d’une règle. Si nous avons #label, nous devons supprimer l’objet ruleContext générique. |
set |
|
to |
Utilisé pour le débogage des informations de contexte de règle pendant l’analyse, pas tant pour le débogage ATN |
to |
|
to |
|
to |
|
to |
|
to |
|
to |
|
to |
Imprimez une arborescence entière, pas seulement un nœud, au format LISP (enfant racine 1 .. childN). Imprimez simplement un nœud s’il s’agit d’une feuille. Nous devons connaître le module de reconnaissance pour pouvoir obtenir des noms de règles. |
to |
Imprimez une arborescence entière, pas seulement un nœud, au format LISP (enfant racine 1 .. childN). Imprimez simplement un nœud s’il s’agit d’une feuille. |
try |
|
try |
|
try |
Détails du constructeur
KeyValueStructureValueContext(ParserRuleContext | undefined, number)
new KeyValueStructureValueContext(parent: ParserRuleContext | undefined, invokingState: number)
Paramètres
- parent
-
ParserRuleContext | undefined
- invokingState
-
number
Détails de la propriété
ruleIndex
number ruleIndex
Valeur de propriété
number
Détails de la propriété héritée
altNumber
Définissez le numéro d’alternative externe pour ce nœud de contexte. L’implémentation par défaut ne permet pas d’éviter la surcharge des champs de stockage pour les arborescences qui n’en ont pas besoin. Créez une sous-classe de ParserRuleContext avec le champ de stockage et définissez le contexte d’option ContextSuperClass. @since 4.5.3
altNumber: number
Valeur de propriété
number
héritée de RuleContext.altNumber
childCount
childCount: number
Valeur de propriété
number
héritée de ParserRuleContext.childCount
children
Si nous déboguez ou créons une arborescence d’analyse pour un visiteur, nous devons suivre tous les jetons et appels de règle associés au contexte de cette règle. Cela est vide pour l’analyse de la chaîne d’arborescence w/o. opération parce que nous n’avons pas besoin de suivre les détails sur la façon dont nous analysons cette règle.
children?: ParseTree[]
Valeur de propriété
ParseTree[]
héritée de ParserRuleContext.children
exception
Exception qui a forcé ce retour de cette règle. Si la règle s’est terminée correctement, il s’agit undefined
.
exception?: RecognitionException
Valeur de propriété
RecognitionException
héritée de ParserRuleContext.exception
invokingState
invokingState: number
Valeur de propriété
number
héritée de RuleContext.invokingState
isEmpty
Un contexte est vide s’il n’y a pas d’état d’appel ; ce qui signifie que personne n’a appelé contexte actuel.
isEmpty: boolean
Valeur de propriété
boolean
héritée de RuleContext.isEmpty
parent
parent: ParserRuleContext | undefined
Valeur de propriété
ParserRuleContext | undefined
héritée de ParserRuleContext.parent
payload
payload: RuleContext
Valeur de propriété
RuleContext
héritée de RuleContext.payload
ruleContext
ruleContext: this
Valeur de propriété
this
héritée de ParserRuleContext.ruleContext
sourceInterval
sourceInterval: Interval
Valeur de propriété
Interval
héritée de ParserRuleContext.sourceInterval
start
Obtenez le jeton initial dans ce contexte. Notez que la plage comprise entre le début et l’arrêt est inclusive. Par conséquent, pour les règles qui ne consomment rien (par exemple, les productions de longueur nulle ou d’erreur) ce jeton peut dépasser l’arrêt.
start: Token
Valeur de propriété
Token
héritée de ParserRuleContext.start
stop
Obtenez le jeton final dans ce contexte. Notez que la plage comprise entre le début et l’arrêt est inclusive. Par conséquent, pour les règles qui ne consomment rien (par exemple, les productions de longueur nulle ou d’erreur), ce jeton peut précéder le début.
stop: Token | undefined
Valeur de propriété
Token | undefined
héritée de ParserRuleContext.stop
text
Retournez le texte combiné de tous les nœuds enfants. Cette méthode considère uniquement les jetons qui ont été ajoutés à l’arborescence d’analyse. Étant donné que les jetons sur les canaux masqués (par exemple, les espaces blancs ou les commentaires) ne sont pas ajoutés aux arborescences d’analyse, ils n’apparaissent pas dans la sortie de cette méthode.
text: string
Valeur de propriété
string
héritée de RuleContext.text
Détails de la méthode
accept<Result>(LGTemplateParserVisitor<Result>)
function accept<Result>(visitor: LGTemplateParserVisitor<Result>): Result
Paramètres
- visitor
-
LGTemplateParserVisitor<Result>
Retours
Result
enterRule(LGTemplateParserListener)
ESCAPE_CHARACTER_IN_STRUCTURE_BODY()
function ESCAPE_CHARACTER_IN_STRUCTURE_BODY(): TerminalNode[]
Retours
TerminalNode[]
ESCAPE_CHARACTER_IN_STRUCTURE_BODY(number)
function ESCAPE_CHARACTER_IN_STRUCTURE_BODY(i: number): TerminalNode
Paramètres
- i
-
number
Retours
TerminalNode
exitRule(LGTemplateParserListener)
expressionInStructure()
function expressionInStructure(): ExpressionInStructureContext[]
Retours
expressionInStructure(number)
function expressionInStructure(i: number): ExpressionInStructureContext
Paramètres
- i
-
number
Retours
TEXT_IN_STRUCTURE_BODY()
function TEXT_IN_STRUCTURE_BODY(): TerminalNode[]
Retours
TerminalNode[]
TEXT_IN_STRUCTURE_BODY(number)
function TEXT_IN_STRUCTURE_BODY(i: number): TerminalNode
Paramètres
- i
-
number
Retours
TerminalNode
Détails de la méthode héritée
addAnyChild<T>(T)
Ajoutez un nœud d’arborescence d’analyse à ce nœud en tant qu’enfant. Fonctionne pour les nœuds internes et feuilles. Ne définit pas de lien parent ; d’autres méthodes d’ajout doivent le faire. D’autres méthodes addChild appellent ceci. Nous ne pouvons pas définir le pointeur parent du nœud entrant, car les interfaces existantes n’ont pas de méthode setParent() et je ne veux pas rompre la compatibilité descendante pour cela.
@since 4.7
function addAnyChild<T>(t: T): T
Paramètres
- t
-
T
Retours
T
héritée de ParserRuleContext.addAnyChild
addChild(RuleContext)
function addChild(ruleInvocation: RuleContext)
Paramètres
- ruleInvocation
-
RuleContext
héritée de ParserRuleContext.addChild
addChild(TerminalNode)
Ajoutez un nœud feuille de jeton enfant et forcez son parent à être ce nœud.
function addChild(t: TerminalNode)
Paramètres
- t
-
TerminalNode
héritée de ParserRuleContext.addChild
addChild(Token)
Avertissement
Cette API est à présent déconseillée.
Use another overload instead.
Ajoutez un enfant à ce nœud en fonction de matchedToken. Il crée un TerminalNodeImpl plutôt que d’utiliser [Token)](xref :Parser%23createTerminalNode(ParserRuleContext%2C). Je laisse cela pour la compatibilité, mais l’analyseur n’utilise plus cela.
function addChild(matchedToken: Token): TerminalNode
Paramètres
- matchedToken
-
Token
Retours
TerminalNode
héritée de ParserRuleContext.addChild
addErrorNode(ErrorNode)
Ajoutez un enfant de nœud d’erreur et forcez son parent à être ce nœud.
function addErrorNode(errorNode: ErrorNode): ErrorNode
Paramètres
- errorNode
-
ErrorNode
Retours
ErrorNode
héritée de ParserRuleContext.addErrorNode
addErrorNode(Token)
Avertissement
Cette API est à présent déconseillée.
Use another overload instead.
Ajoutez un enfant à ce nœud en fonction de badToken. Il crée un ErrorNode plutôt que d’utiliser [Token)](xref :Parser%23createErrorNode(ParserRuleContext%2C). Je laisse cela pour la compatibilité, mais l’analyseur n’utilise plus cela.
function addErrorNode(badToken: Token): ErrorNode
Paramètres
- badToken
-
Token
Retours
ErrorNode
héritée de ParserRuleContext.addErrorNode
copyFrom(ParserRuleContext)
COPIEz un ctx (je n’utilise pas délibérément le constructeur de copie) pour éviter toute confusion avec la création d’un nœud avec le parent. Ne copie pas les enfants (sauf les feuilles d’erreur). Cela est utilisé dans le code d’analyseur généré pour retourner un nœud XContext générique pour la règle X à un YContext pour l’étiquette de remplacement Y. Dans ce sens, il n’est pas vraiment une fonction de copie générique.
Si nous effectuons une synchronisation d’erreurs au début d’une règle, nous pouvons ajouter des nœuds d’erreur au XContext générique afin que cette fonction puisse copier ces nœuds dans YContext.
function copyFrom(ctx: ParserRuleContext)
Paramètres
- ctx
-
ParserRuleContext
héritée de ParserRuleContext.copyFrom
depth()
function depth(): number
Retours
number
héritée de RuleContext.depth
emptyContext()
static function emptyContext(): ParserRuleContext
Retours
ParserRuleContext
héritée de parserRuleContext.emptyContext
getChild(number)
function getChild(i: number): ParseTree
Paramètres
- i
-
number
Retours
ParseTree
héritée de ParserRuleContext.getChild
getChild<T>(number, { })
function getChild<T>(i: number, ctxType: { }): T
Paramètres
- i
-
number
- ctxType
-
{ }
Retours
T
héritée de ParserRuleContext.getChild
getChildContext(RuleContext, number)
static function getChildContext(parent: RuleContext, invokingState: number): RuleContext
Paramètres
- parent
-
RuleContext
- invokingState
-
number
Retours
RuleContext
héritée de RuleContext.getChildContext
getRuleContext<T>(number, { })
function getRuleContext<T>(i: number, ctxType: { }): T
Paramètres
- i
-
number
- ctxType
-
{ }
Retours
T
héritée de ParserRuleContext.getRuleContext
getRuleContexts<T>({ })
function getRuleContexts<T>(ctxType: { }): T[]
Paramètres
- ctxType
-
{ }
Retours
T[]
héritée de ParserRuleContext.getRuleContexts
getToken(number, number)
function getToken(ttype: number, i: number): TerminalNode
Paramètres
- ttype
-
number
- i
-
number
Retours
TerminalNode
héritée de ParserRuleContext.getToken
getTokens(number)
function getTokens(ttype: number): TerminalNode[]
Paramètres
- ttype
-
number
Retours
TerminalNode[]
héritée de ParserRuleContext.getTokens
removeLastChild()
Utilisé par enterOuterAlt pour extraire un RuleContext précédemment ajouté lors de l’entrée d’une règle. Si nous avons #label, nous devons supprimer l’objet ruleContext générique.
function removeLastChild()
héritée de ParserRuleContext.removeLastChild
setParent(RuleContext)
function setParent(parent: RuleContext)
Paramètres
- parent
-
RuleContext
héritée de RuleContext.setParent
toInfoString(Parser)
Utilisé pour le débogage des informations de contexte de règle pendant l’analyse, pas tant pour le débogage ATN
function toInfoString(recognizer: Parser): string
Paramètres
- recognizer
-
Parser
Retours
string
héritée de ParserRuleContext.toInfoString
toString()
function toString(): string
Retours
string
héritée de RuleContext.toString
toString(Recognizer<any, any> | undefined)
function toString(recog: Recognizer<any, any> | undefined): string
Paramètres
- recog
-
Recognizer<any, any> | undefined
Retours
string
héritée de RuleContext.toString
toString(Recognizer<any, any> | undefined, RuleContext | undefined)
function toString(recog: Recognizer<any, any> | undefined, stop: RuleContext | undefined): string
Paramètres
- recog
-
Recognizer<any, any> | undefined
- stop
-
RuleContext | undefined
Retours
string
héritée de RuleContext.toString
toString(string[] | undefined)
function toString(ruleNames: string[] | undefined): string
Paramètres
- ruleNames
-
string[] | undefined
Retours
string
héritée de RuleContext.toString
toString(string[] | undefined, RuleContext | undefined)
function toString(ruleNames: string[] | undefined, stop: RuleContext | undefined): string
Paramètres
- ruleNames
-
string[] | undefined
- stop
-
RuleContext | undefined
Retours
string
héritée de RuleContext.toString
toStringTree()
function toStringTree(): string
Retours
string
héritée de RuleContext.toStringTree
toStringTree(Parser)
Imprimez une arborescence entière, pas seulement un nœud, au format LISP (enfant racine 1 .. childN). Imprimez simplement un nœud s’il s’agit d’une feuille. Nous devons connaître le module de reconnaissance pour pouvoir obtenir des noms de règles.
function toStringTree(recog: Parser): string
Paramètres
- recog
-
Parser
Retours
string
héritée de RuleContext.toStringTree
toStringTree(string[] | undefined)
Imprimez une arborescence entière, pas seulement un nœud, au format LISP (enfant racine 1 .. childN). Imprimez simplement un nœud s’il s’agit d’une feuille.
function toStringTree(ruleNames: string[] | undefined): string
Paramètres
- ruleNames
-
string[] | undefined
Retours
string
héritée de RuleContext.toStringTree
tryGetChild<T>(number, { })
function tryGetChild<T>(i: number, ctxType: { }): T | undefined
Paramètres
- i
-
number
- ctxType
-
{ }
Retours
T | undefined
héritée de ParserRuleContext.tryGetChild
tryGetRuleContext<T>(number, { })
function tryGetRuleContext<T>(i: number, ctxType: { }): T | undefined
Paramètres
- i
-
number
- ctxType
-
{ }
Retours
T | undefined
héritée de ParserRuleContext.tryGetRuleContext
tryGetToken(number, number)
function tryGetToken(ttype: number, i: number): TerminalNode | undefined
Paramètres
- ttype
-
number
- i
-
number
Retours
TerminalNode | undefined
héritée de ParserRuleContext.tryGetToken