FileContext class
- Extends
-
ParserRuleContext
Constructeurs
File |
Propriétés
rule |
Propriétés héritées
alt |
Définissez le numéro de remplacement externe pour ce nœud de contexte. L’implémentation par défaut ne fait rien pour éviter la surcharge de champ 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 l’option contextSuperClass. @since 4.5.3 |
child |
|
children | Si nous déboguons ou créons une arborescence d’analyse pour un visiteur, nous devons suivre tous les jetons et les appels de règle associés au contexte de cette règle. Ce champ est vide pour l’analyse de l’arborescence constr. car nous n’avons pas besoin de suivre les détails de l’analyse de cette règle. |
exception | Exception qui a forcé le retour de cette règle. Si la règle s’est terminée correctement, il s’agit de |
invoking |
|
is |
Un contexte est vide s’il n’y a pas d’état d’appel ; ce qui signifie que personne n’a appelé le contexte actuel. |
parent | |
payload | |
rule |
|
source |
|
start | Obtenez le jeton initial dans ce contexte. Notez que la plage de début à arrêt est inclusive. Par conséquent, pour les règles qui ne consomment rien (par exemple, une longueur nulle ou des productions d’erreur), ce jeton peut dépasser stop. |
stop | Obtenez le jeton final dans ce contexte. Notez que la plage de début à arrêt est inclusive. Par conséquent, pour les règles qui ne consomment rien (par exemple, une longueur nulle ou des productions d’erreur), ce jeton peut précéder start. |
text | Retourne le texte combiné de tous les nœuds enfants. Cette méthode prend uniquement en compte les jetons qui ont été ajoutés à l’arborescence d’analyse. Étant donné que les jetons sur les canaux masqués (par exemple, espaces blancs ou commentaires) ne sont pas ajoutés aux arborescences d’analyse, ils n’apparaissent pas dans la sortie de cette méthode. |
Méthodes
accept<Result>(Expression |
|
enter |
|
EOF() | |
exit |
|
expression() |
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 souhaite pas interrompre la compatibilité descendante pour cela. @since 4.7 |
add |
|
add |
Ajoutez un enfant de nœud feuille de jeton et forcez son parent à être ce nœud. |
add |
Ajoutez un enfant à ce nœud en fonction de correspondanceToken. Il crée un TerminalNodeImpl plutôt que d’utiliser [Token)](xref:Parser%23createTerminalNode(ParserRuleContext%2C). Je laisse cela dans pour la compatibilité, mais l’analyseur ne l’utilise plus. |
add |
Ajoutez un nœud d’erreur enfant et forcez son parent à être ce nœud. |
add |
Ajoutez un enfant à ce nœud en fonction de badToken. Il crée un ErrorNode au lieu d’utiliser [Token)](xref:Parser%23createErrorNode(ParserRuleContext%2C). Je laisse cela dans pour la compatibilité, mais l’analyseur ne l’utilise plus. |
copy |
COPY a ctx (je n’utilise pas délibérément le constructeur de copie) pour éviter toute confusion lors de 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 de l’analyseur généré pour retourner un nœud XContext générique pour la règle X en YContext pour l’étiquette de remplacement Y. En ce sens, il ne s’agit pas vraiment d’une fonction de copie générique. Si nous effectuons une synchronisation d’erreur() au début d’une règle, nous pouvons ajouter des nœuds d’erreur au XContext générique de sorte que cette fonction doit copier ces nœuds dans le YContext, sinon ils sont perdus! |
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 tellement 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 (racine enfant1 .. childN). Imprimez uniquement 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ègle. |
to |
Imprimez une arborescence entière, pas seulement un nœud, au format LISP (racine enfant1 .. childN). Imprimez uniquement un nœud s’il s’agit d’une feuille. |
try |
|
try |
|
try |
Détails du constructeur
FileContext(ParserRuleContext | undefined, number)
new FileContext(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 de remplacement externe pour ce nœud de contexte. L’implémentation par défaut ne fait rien pour éviter la surcharge de champ 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 l’option contextSuperClass. @since 4.5.3
altNumber: number
Valeur de propriété
number
Hérité de RuleContext.altNumber
childCount
childCount: number
Valeur de propriété
number
Hérité de ParserRuleContext.childCount
children
Si nous déboguons ou créons une arborescence d’analyse pour un visiteur, nous devons suivre tous les jetons et les appels de règle associés au contexte de cette règle. Ce champ est vide pour l’analyse de l’arborescence constr. car nous n’avons pas besoin de suivre les détails de l’analyse de cette règle.
children?: ParseTree[]
Valeur de propriété
ParseTree[]
Hérité de ParserRuleContext.children
exception
Exception qui a forcé le retour de cette règle. Si la règle s’est terminée correctement, il s’agit de undefined
.
exception?: RecognitionException
Valeur de propriété
RecognitionException
Hérité de ParserRuleContext.exception
invokingState
invokingState: number
Valeur de propriété
number
Hérité 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é le contexte actuel.
isEmpty: boolean
Valeur de propriété
boolean
Hérité de RuleContext.isEmpty
parent
parent: ParserRuleContext | undefined
Valeur de propriété
ParserRuleContext | undefined
Hérité de ParserRuleContext.parent
payload
payload: RuleContext
Valeur de propriété
RuleContext
Hérité de RuleContext.payload
ruleContext
ruleContext: this
Valeur de propriété
this
Hérité de ParserRuleContext.ruleContext
sourceInterval
sourceInterval: Interval
Valeur de propriété
Interval
Hérité de ParserRuleContext.sourceInterval
start
Obtenez le jeton initial dans ce contexte. Notez que la plage de début à arrêt est inclusive. Par conséquent, pour les règles qui ne consomment rien (par exemple, une longueur nulle ou des productions d’erreur), ce jeton peut dépasser stop.
start: Token
Valeur de propriété
Token
Hérité de ParserRuleContext.start
stop
Obtenez le jeton final dans ce contexte. Notez que la plage de début à arrêt est inclusive. Par conséquent, pour les règles qui ne consomment rien (par exemple, une longueur nulle ou des productions d’erreur), ce jeton peut précéder start.
stop: Token | undefined
Valeur de propriété
Token | undefined
Hérité de ParserRuleContext.stop
text
Retourne le texte combiné de tous les nœuds enfants. Cette méthode prend uniquement en compte les jetons qui ont été ajoutés à l’arborescence d’analyse. Étant donné que les jetons sur les canaux masqués (par exemple, espaces blancs ou 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é de RuleContext.text
Détails de la méthode
accept<Result>(ExpressionAntlrParserVisitor<Result>)
function accept<Result>(visitor: ExpressionAntlrParserVisitor<Result>): Result
Paramètres
- visitor
-
ExpressionAntlrParserVisitor<Result>
Retours
Result
enterRule(ExpressionAntlrParserListener)
function enterRule(listener: ExpressionAntlrParserListener)
Paramètres
- listener
- ExpressionAntlrParserListener
EOF()
function EOF(): TerminalNode
Retours
TerminalNode
exitRule(ExpressionAntlrParserListener)
function exitRule(listener: ExpressionAntlrParserListener)
Paramètres
- listener
- ExpressionAntlrParserListener
expression()
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 souhaite pas interrompre la compatibilité descendante pour cela.
@since 4.7
function addAnyChild<T>(t: T): T
Paramètres
- t
-
T
Retours
T
Hérité de ParserRuleContext.addAnyChild
addChild(RuleContext)
function addChild(ruleInvocation: RuleContext)
Paramètres
- ruleInvocation
-
RuleContext
Hérité de ParserRuleContext.addChild
addChild(TerminalNode)
Ajoutez un enfant de nœud feuille de jeton et forcez son parent à être ce nœud.
function addChild(t: TerminalNode)
Paramètres
- t
-
TerminalNode
Hérité 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 correspondanceToken. Il crée un TerminalNodeImpl plutôt que d’utiliser [Token)](xref:Parser%23createTerminalNode(ParserRuleContext%2C). Je laisse cela dans pour la compatibilité, mais l’analyseur ne l’utilise plus.
function addChild(matchedToken: Token): TerminalNode
Paramètres
- matchedToken
-
Token
Retours
TerminalNode
Hérité de ParserRuleContext.addChild
addErrorNode(ErrorNode)
Ajoutez un nœud d’erreur enfant et forcez son parent à être ce nœud.
function addErrorNode(errorNode: ErrorNode): ErrorNode
Paramètres
- errorNode
-
ErrorNode
Retours
ErrorNode
Hérité 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 au lieu d’utiliser [Token)](xref:Parser%23createErrorNode(ParserRuleContext%2C). Je laisse cela dans pour la compatibilité, mais l’analyseur ne l’utilise plus.
function addErrorNode(badToken: Token): ErrorNode
Paramètres
- badToken
-
Token
Retours
ErrorNode
Hérité de ParserRuleContext.addErrorNode
copyFrom(ParserRuleContext)
COPY a ctx (je n’utilise pas délibérément le constructeur de copie) pour éviter toute confusion lors de 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 de l’analyseur généré pour retourner un nœud XContext générique pour la règle X en YContext pour l’étiquette de remplacement Y. En ce sens, il ne s’agit pas vraiment d’une fonction de copie générique.
Si nous effectuons une synchronisation d’erreur() au début d’une règle, nous pouvons ajouter des nœuds d’erreur au XContext générique de sorte que cette fonction doit copier ces nœuds dans le YContext, sinon ils sont perdus!
function copyFrom(ctx: ParserRuleContext)
Paramètres
- ctx
-
ParserRuleContext
Hérité de ParserRuleContext.copyFrom
depth()
function depth(): number
Retours
number
Hérité de RuleContext.depth
emptyContext()
static function emptyContext(): ParserRuleContext
Retours
ParserRuleContext
Hérité de ParserRuleContext.emptyContext
getChild(number)
function getChild(i: number): ParseTree
Paramètres
- i
-
number
Retours
ParseTree
Hérité de ParserRuleContext.getChild
getChild<T>(number, { })
function getChild<T>(i: number, ctxType: { }): T
Paramètres
- i
-
number
- ctxType
-
{ }
Retours
T
Hérité de ParserRuleContext.getChild
getChildContext(RuleContext, number)
static function getChildContext(parent: RuleContext, invokingState: number): RuleContext
Paramètres
- parent
-
RuleContext
- invokingState
-
number
Retours
RuleContext
Hérité de RuleContext.getChildContext
getRuleContext<T>(number, { })
function getRuleContext<T>(i: number, ctxType: { }): T
Paramètres
- i
-
number
- ctxType
-
{ }
Retours
T
Hérité de ParserRuleContext.getRuleContext
getRuleContexts<T>({ })
function getRuleContexts<T>(ctxType: { }): T[]
Paramètres
- ctxType
-
{ }
Retours
T[]
Hérité de ParserRuleContext.getRuleContexts
getToken(number, number)
function getToken(ttype: number, i: number): TerminalNode
Paramètres
- ttype
-
number
- i
-
number
Retours
TerminalNode
Hérité de ParserRuleContext.getToken
getTokens(number)
function getTokens(ttype: number): TerminalNode[]
Paramètres
- ttype
-
number
Retours
TerminalNode[]
Hérité 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é de ParserRuleContext.removeLastChild
setParent(RuleContext)
function setParent(parent: RuleContext)
Paramètres
- parent
-
RuleContext
Hérité de RuleContext.setParent
toInfoString(Parser)
Utilisé pour le débogage des informations de contexte de règle pendant l’analyse, pas tellement pour le débogage ATN
function toInfoString(recognizer: Parser): string
Paramètres
- recognizer
-
Parser
Retours
string
Hérité de ParserRuleContext.toInfoString
toString()
function toString(): string
Retours
string
Hérité 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é 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é de RuleContext.toString
toString(string[] | undefined)
function toString(ruleNames: string[] | undefined): string
Paramètres
- ruleNames
-
string[] | undefined
Retours
string
Hérité 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é de RuleContext.toString
toStringTree()
function toStringTree(): string
Retours
string
Hérité de RuleContext.toStringTree
toStringTree(Parser)
Imprimez une arborescence entière, pas seulement un nœud, au format LISP (racine enfant1 .. childN). Imprimez uniquement 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ègle.
function toStringTree(recog: Parser): string
Paramètres
- recog
-
Parser
Retours
string
Hérité de RuleContext.toStringTree
toStringTree(string[] | undefined)
Imprimez une arborescence entière, pas seulement un nœud, au format LISP (racine enfant1 .. childN). Imprimez uniquement 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é de RuleContext.toStringTree
tryGetChild<T>(number, { })
function tryGetChild<T>(i: number, ctxType: { }): T | undefined
Paramètres
- i
-
number
- ctxType
-
{ }
Retours
T | undefined
Hérité de ParserRuleContext.tryGetChild
tryGetRuleContext<T>(number, { })
function tryGetRuleContext<T>(i: number, ctxType: { }): T | undefined
Paramètres
- i
-
number
- ctxType
-
{ }
Retours
T | undefined
Hérité 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é de ParserRuleContext.tryGetToken