ExpressionAntlrParser class
- Extends
-
Parser
Constructeurs
Expression |
Propriétés
Propriétés héritées
atn | Obtenez le serializedATN utilisé par le module de reconnaissance pour la prédiction. |
build |
Suivez les <xref:ParserRuleContext> objets pendant l’analyse et connectez-les à l’aide de la <xref:ParserRuleContext%23children> liste afin qu’elle forme une arborescence d’analyse. Retourné <xref:ParserRuleContext> par la règle de début représente la racine de l’arborescence d’analyse. Notez que si nous ne créons pas d’arborescences d’analyse, les contextes de règles pointent uniquement vers le haut. Lorsqu’une règle se termine, elle retourne le contexte, mais qui obtient une collecte de mémoire si personne ne détient une référence. Il pointe vers le haut, mais personne ne pointe vers lui. Lorsque nous créons des arborescences d’analyse, nous ajoutons tous ces contextes à la <xref:ParserRuleContext%23children> liste. Les contextes ne sont alors pas candidats au garbage collection. |
context | |
current |
La correspondance doit retourner le symbole d’entrée actuel, qui est placé dans l’étiquette pour la référence de jeton associée ; par exemple, x=ID. |
EOF | |
error |
|
input |
Définissez le flux de jetons et réinitialisez l’analyseur. |
interpreter | Définissez l’interpréteur ATN utilisé par le module de reconnaissance pour la prédiction. |
is |
|
is |
Lors d’une analyse, il est parfois utile d’écouter les événements d’entrée et de sortie de règle, ainsi que les correspondances de jeton. Il s’agit d’un débogage rapide et incorrect. |
number |
Obtient le nombre d’erreurs de syntaxe signalées pendant l’analyse. Cette valeur est incrémentée chaque fois <xref:%23notifyErrorListeners> qu’elle est appelée. Voir #notifyErrorListeners |
parse |
|
precedence | Obtenez le niveau de précédence pour la règle de précédence la plus élevée. |
rule |
|
source |
|
state | Indiquez que le module de reconnaissance a changé l’état interne qui est cohérent avec l’état ATN transmis. De cette façon, nous savons toujours où nous sommes dans l’ATN au fur et à mesure que l’analyseur va. Les objets de contexte de règle forment une pile qui nous permet de voir la pile des règles d’appel. Combinez cela et nous avons des informations de configuration ATN complètes. |
token |
Méthodes
Méthodes héritées
action(Rule |
|
add |
|
add |
S’inscrit pour recevoir des Avec les exceptions spécifiques suivantes, les appels aux événements d’écouteur sont déterministes, c’est-à-dire que pour une entrée identique, les appels aux méthodes d’écouteur seront les mêmes.
|
compile |
Méthode préférée pour obtenir un modèle d’arborescence. Par exemple, voici un exemple d’utilisation :
|
compile |
Identique à [int)](xref:%23compileParseTreePattern(String%2C), mais spécifiez un CommonRegexLexer au lieu d’essayer de le déduire de cet analyseur. |
consume() | Consommez et retournez le symbole actuel.
Par exemple, étant donné que l’entrée
Si l’analyseur n’est pas en mode de récupération d’erreur, le symbole consommé est ajouté à l’arborescence d’analyse à l’aide <xref:ParserRuleContext%23addChild(TerminalNode)>de et <xref:ParseTreeListener%23visitTerminal> est appelé sur tous les écouteurs d’analyse. Si l’analyseur est en mode de récupération d’erreur, le symbole consommé est ajouté à l’arborescence d’analyse à l’aide de [Token)](xref:%23createErrorNode(ParserRuleContext%2C) puis <xref:ParserRuleContext%23addErrorNode(ErrorNode)> et <xref:ParseTreeListener%23visitErrorNode> est appelé sur tous les écouteurs d’analyse. |
create |
Comment créer un nœud d’erreur, en fonction d’un jeton, associé à un parent. En règle générale, le nœud d’erreur à créer n’est pas une fonction du parent. |
create |
Comment créer un nœud feuille de jeton associé à un parent. En règle générale, le nœud terminal à créer n’est pas une fonction du parent. |
dumpDFA() | À des fins de débogage et à d’autres fins. |
enter |
|
enter |
|
enter |
|
enter |
Toujours appelé par les analyseurs générés lors de l’entrée dans une règle. Le champ d’accès <xref:%23_ctx> obtient le contexte actuel. |
exit |
|
get |
L’ATN avec des alternatives de contournement est coûteux à créer. Nous le créons donc paresseusement.
@ si l’analyseur actuel n’implémente pas la |
get |
À des fins de débogage et à d’autres fins. |
get |
Quel est l’en-tête d’erreur, normalement des informations de position de ligne/caractère ? |
get |
|
get |
|
get |
Calcule l’ensemble de symboles d’entrée qui peuvent suivre l’état et le contexte actuels de l’analyseur, comme indiqué par <xref:%23getState> et <xref:%23getContext>, respectivement. Consultez ATN#getExpectedTokens(int, RuleContext) |
get |
|
get |
|
get |
|
get |
Obtenez l’index d’une règle (c’est-à-dire le |
get |
Obtenez un mappage des noms de règles aux index de règle. Utilisé pour la compilation de modèles XPath et d’arborescence. |
get |
Return List<String> des noms de règle dans votre instance d’analyseur menant à un appel à la règle actuelle. Vous pouvez remplacer si vous souhaitez obtenir plus de détails, tels que les informations de fichier/ligne de l’endroit où, dans l’ATN, une règle est appelée. Cela est très utile pour les messages d’erreur. |
get |
|
get |
Obtenez un mappage des noms de jetons aux types de jetons. Utilisé pour la compilation de modèles XPath et d’arborescence. |
in |
|
is |
Vérifie si vous pouvez ou non
|
match(number) | Faites correspondre le symbole d’entrée actuel à |
match |
Faire correspondre le symbole d’entrée actuel sous la forme d’un caractère générique. Si le type de symbole correspond (c’est-à-dire a une valeur supérieure à 0) <xref:ANTLRErrorStrategy%23reportMatch> et <xref:%23consume> sont appelés pour terminer le processus de correspondance.
Si le type de symbole ne correspond pas, <xref:ANTLRErrorStrategy%23recoverInline> est appelé sur la stratégie d’erreur actuelle pour tenter de récupérer. Si <xref:%23getBuildParseTree> est |
notify |
|
notify |
|
precpred(Rule |
|
push |
Comme <xref:%23enterRule> mais pour les règles récursives. Faites du contexte actuel l’enfant du localctx entrant. |
remove |
|
remove |
|
remove |
Supprimez Voir #addParseListener |
remove |
Supprimez tous les écouteurs d’analyse. Voir #addParseListener |
reset() | réinitialiser l’état de l’analyseur |
reset(boolean) | |
set |
|
unroll |
Détails du constructeur
ExpressionAntlrParser(TokenStream)
new ExpressionAntlrParser(input: TokenStream)
Paramètres
- input
-
TokenStream
Détails de la propriété
ARROW
public static ARROW: 27 = 27
Valeur de propriété
27
ASTERISK
public static ASTERISK: 6 = 6
Valeur de propriété
6
CLOSE_BRACKET
public static CLOSE_BRACKET: 19 = 19
Valeur de propriété
19
CLOSE_CURLY_BRACKET
public static CLOSE_CURLY_BRACKET: 24 = 24
Valeur de propriété
24
CLOSE_SQUARE_BRACKET
public static CLOSE_SQUARE_BRACKET: 22 = 22
Valeur de propriété
22
COLON
public static COLON: 26 = 26
Valeur de propriété
26
COMMA
public static COMMA: 25 = 25
Valeur de propriété
25
DOT
public static DOT: 20 = 20
Valeur de propriété
20
DOUBLE_AND
public static DOUBLE_AND: 12 = 12
Valeur de propriété
12
DOUBLE_EQUAL
public static DOUBLE_EQUAL: 9 = 9
Valeur de propriété
9
DOUBLE_VERTICAL_CYLINDER
public static DOUBLE_VERTICAL_CYLINDER: 13 = 13
Valeur de propriété
13
ESCAPE_CHARACTER
public static ESCAPE_CHARACTER: 37 = 37
Valeur de propriété
37
grammarFileName
string grammarFileName
Valeur de propriété
string
IDENTIFIER
public static IDENTIFIER: 32 = 32
Valeur de propriété
32
INVALID_TOKEN_DEFAULT_MODE
public static INVALID_TOKEN_DEFAULT_MODE: 35 = 35
Valeur de propriété
35
LESS_OR_EQUAl
public static LESS_OR_EQUAl: 16 = 16
Valeur de propriété
16
LESS_THAN
public static LESS_THAN: 14 = 14
Valeur de propriété
14
MORE_OR_EQUAL
public static MORE_OR_EQUAL: 17 = 17
Valeur de propriété
17
MORE_THAN
public static MORE_THAN: 15 = 15
Valeur de propriété
15
NEWLINE
public static NEWLINE: 33 = 33
Valeur de propriété
33
NON
public static NON: 4 = 4
Valeur de propriété
4
NOT_EQUAL
public static NOT_EQUAL: 10 = 10
Valeur de propriété
10
NULL_COALESCE
public static NULL_COALESCE: 28 = 28
Valeur de propriété
28
NUMBER
public static NUMBER: 30 = 30
Valeur de propriété
30
OPEN_BRACKET
public static OPEN_BRACKET: 18 = 18
Valeur de propriété
18
OPEN_CURLY_BRACKET
public static OPEN_CURLY_BRACKET: 23 = 23
Valeur de propriété
23
OPEN_SQUARE_BRACKET
public static OPEN_SQUARE_BRACKET: 21 = 21
Valeur de propriété
21
PERCENT
public static PERCENT: 8 = 8
Valeur de propriété
8
PLUS
public static PLUS: 2 = 2
Valeur de propriété
2
QUESTION_MARK
public static QUESTION_MARK: 29 = 29
Valeur de propriété
29
ruleNames
public static ruleNames: string[] = [
"file", "expression", "primaryExpression", "stringInterpolation", "textContent",
"argsList", "lambda", "keyValuePairList", "keyValuePair", "key",
]
Valeur de propriété
string[]
ruleNames
string[] ruleNames
Valeur de propriété
string[]
RULE_argsList
public static RULE_argsList: 5 = 5
Valeur de propriété
5
RULE_expression
public static RULE_expression: 1 = 1
Valeur de propriété
1
RULE_file
public static RULE_file: 0 = 0
Valeur de propriété
0
RULE_key
public static RULE_key: 9 = 9
Valeur de propriété
9
RULE_keyValuePair
public static RULE_keyValuePair: 8 = 8
Valeur de propriété
8
RULE_keyValuePairList
public static RULE_keyValuePairList: 7 = 7
Valeur de propriété
7
RULE_lambda
public static RULE_lambda: 6 = 6
Valeur de propriété
6
RULE_primaryExpression
public static RULE_primaryExpression: 2 = 2
Valeur de propriété
2
RULE_stringInterpolation
public static RULE_stringInterpolation: 3 = 3
Valeur de propriété
3
RULE_textContent
public static RULE_textContent: 4 = 4
Valeur de propriété
4
serializedATN
string serializedATN
Valeur de propriété
string
SINGLE_AND
public static SINGLE_AND: 11 = 11
Valeur de propriété
11
SLASH
public static SLASH: 7 = 7
Valeur de propriété
7
STRING
public static STRING: 34 = 34
Valeur de propriété
34
STRING_INTERPOLATION_START
public static STRING_INTERPOLATION_START: 1 = 1
Valeur de propriété
1
SUBSTRACT
public static SUBSTRACT: 3 = 3
Valeur de propriété
3
TEMPLATE
public static TEMPLATE: 36 = 36
Valeur de propriété
36
TEXT_CONTENT
public static TEXT_CONTENT: 38 = 38
Valeur de propriété
38
VOCABULARY
public static VOCABULARY: Vocabulary = new VocabularyImpl(ExpressionAntlrParser._LITERAL_NAMES, ExpressionAntlrParser._SYMBOLIC_NAMES, [])
Valeur de propriété
Vocabulary
vocabulary
Vocabulary vocabulary
Valeur de propriété
Vocabulary
WHITESPACE
public static WHITESPACE: 31 = 31
Valeur de propriété
31
XOR
public static XOR: 5 = 5
Valeur de propriété
5
Détails de la propriété héritée
atn
Obtenez le serializedATN utilisé par le module de reconnaissance pour la prédiction.
atn: ATN
Valeur de propriété
ATN
Hérité de Recognizer.atn
buildParseTree
Suivez les <xref:ParserRuleContext> objets pendant l’analyse et connectez-les à l’aide de la <xref:ParserRuleContext%23children> liste afin qu’elle forme une arborescence d’analyse. Retourné <xref:ParserRuleContext> par la règle de début représente la racine de l’arborescence d’analyse. Notez que si nous ne créons pas d’arborescences d’analyse, les contextes de règles pointent uniquement vers le haut. Lorsqu’une règle se termine, elle retourne le contexte, mais qui obtient une collecte de mémoire si personne ne détient une référence. Il pointe vers le haut, mais personne ne pointe vers lui.
Lorsque nous créons des arborescences d’analyse, nous ajoutons tous ces contextes à la <xref:ParserRuleContext%23children> liste. Les contextes ne sont alors pas candidats au garbage collection.
buildParseTree: boolean
Valeur de propriété
boolean
Hérité de Parser.buildParseTree
context
context: ParserRuleContext
Valeur de propriété
ParserRuleContext
Hérité de Parser.context
currentToken
La correspondance doit retourner le symbole d’entrée actuel, qui est placé dans l’étiquette pour la référence de jeton associée ; par exemple, x=ID.
currentToken: Token
Valeur de propriété
Token
Hérité de Parser.currentToken
EOF
static EOF: number
Valeur de propriété
number
Hérité de Recognizer.EOF
errorHandler
errorHandler: ANTLRErrorStrategy
Valeur de propriété
ANTLRErrorStrategy
Hérité de Parser.errorHandler
inputStream
Définissez le flux de jetons et réinitialisez l’analyseur.
inputStream: TokenStream
Valeur de propriété
TokenStream
Hérité de Parser.inputStream
interpreter
Définissez l’interpréteur ATN utilisé par le module de reconnaissance pour la prédiction.
interpreter: ParserATNSimulator
Valeur de propriété
ParserATNSimulator
Hérité de Recognizer.interpreter
isMatchedEOF
isMatchedEOF: boolean
Valeur de propriété
boolean
Hérité de Parser.isMatchedEOF
isTrace
Lors d’une analyse, il est parfois utile d’écouter les événements d’entrée et de sortie de règle, ainsi que les correspondances de jeton. Il s’agit d’un débogage rapide et incorrect.
isTrace: boolean
Valeur de propriété
boolean
Hérité de Parser.isTrace
numberOfSyntaxErrors
Obtient le nombre d’erreurs de syntaxe signalées pendant l’analyse. Cette valeur est incrémentée chaque fois <xref:%23notifyErrorListeners> qu’elle est appelée.
Voir #notifyErrorListeners
numberOfSyntaxErrors: number
Valeur de propriété
number
Hérité de Parser.numberOfSyntaxErrors
parseInfo
parseInfo: Promise<ParseInfo | undefined>
Valeur de propriété
Promise<ParseInfo | undefined>
Hérité de Parser.parseInfo
precedence
Obtenez le niveau de précédence pour la règle de précédence la plus élevée.
precedence: number
Valeur de propriété
number
Hérité de Parser.precedence
ruleContext
ruleContext: ParserRuleContext
Valeur de propriété
ParserRuleContext
Hérité de Parser.ruleContext
sourceName
sourceName: string
Valeur de propriété
string
Hérité de Parser.sourceName
state
Indiquez que le module de reconnaissance a changé l’état interne qui est cohérent avec l’état ATN transmis. De cette façon, nous savons toujours où nous sommes dans l’ATN au fur et à mesure que l’analyseur va. Les objets de contexte de règle forment une pile qui nous permet de voir la pile des règles d’appel. Combinez cela et nous avons des informations de configuration ATN complètes.
state: number
Valeur de propriété
number
Hérité de Recognizer.state
tokenFactory
tokenFactory: TokenFactory
Valeur de propriété
TokenFactory
Hérité de Parser.tokenFactory
Détails de la méthode
argsList()
expression()
expression(number)
file()
key()
keyValuePair()
keyValuePairList()
lambda()
primaryExpression()
primaryExpression(number)
function primaryExpression(_p: number): PrimaryExpressionContext
Paramètres
- _p
-
number
Retours
sempred(RuleContext, number, number)
function sempred(_localctx: RuleContext, ruleIndex: number, predIndex: number): boolean
Paramètres
- _localctx
-
RuleContext
- ruleIndex
-
number
- predIndex
-
number
Retours
boolean
stringInterpolation()
textContent()
Détails de la méthode héritée
action(RuleContext | undefined, number, number)
function action(_localctx: RuleContext | undefined, ruleIndex: number, actionIndex: number)
Paramètres
- _localctx
-
RuleContext | undefined
- ruleIndex
-
number
- actionIndex
-
number
Hérité de Recognizer.action
addErrorListener(ANTLRErrorListener<Token>)
function addErrorListener(listener: ANTLRErrorListener<Token>)
Paramètres
- listener
-
ANTLRErrorListener<Token>
Hérité de Recognizer.addErrorListener
addParseListener(ParseTreeListener)
S’inscrit pour recevoir des listener
événements pendant le processus d’analyse.
Pour prendre en charge les transformations grammaticales de préservation de la sortie (y compris, mais sans s’y limiter, la suppression de la récursivité gauche, la factoring de gauche automatisée et la génération de code optimisée), les appels aux méthodes d’écouteur pendant l’analyse peuvent différer considérablement des appels effectués par <xref:ParseTreeWalker%23DEFAULT> utilisés une fois l’analyse terminée. En particulier, les événements d’entrée et de sortie de règle peuvent se produire dans un ordre différent pendant l’analyse qu’après l’analyseur. En outre, les appels à certaines méthodes d’entrée de règle peuvent être omis.
Avec les exceptions spécifiques suivantes, les appels aux événements d’écouteur sont déterministes, c’est-à-dire que pour une entrée identique, les appels aux méthodes d’écouteur seront les mêmes.
- Les modifications apportées à la grammaire utilisée pour générer du code peuvent modifier le comportement des appels de l’écouteur.
- Les modifications apportées aux options de ligne de commande passées à ANTLR 4 lors de la génération de l’analyseur peuvent modifier le comportement des appels de l’écouteur.
- La modification de la version de l’outil ANTLR utilisé pour générer l’analyseur peut modifier le comportement des appels de l’écouteur.
function addParseListener(listener: ParseTreeListener)
Paramètres
- listener
-
ParseTreeListener
écouteur à ajouter
Hérité de Parser.addParseListener
compileParseTreePattern(string, number)
Méthode préférée pour obtenir un modèle d’arborescence. Par exemple, voici un exemple d’utilisation :
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>
Paramètres
- pattern
-
string
- patternRuleIndex
-
number
Retours
Promise<ParseTreePattern>
Hérité de Parser.compileParseTreePattern
compileParseTreePattern(string, number, Lexer)
Identique à [int)](xref:%23compileParseTreePattern(String%2C), mais spécifiez un CommonRegexLexer au lieu d’essayer de le déduire de cet analyseur.
function compileParseTreePattern(pattern: string, patternRuleIndex: number, lexer?: Lexer): Promise<ParseTreePattern>
Paramètres
- pattern
-
string
- patternRuleIndex
-
number
- lexer
-
Lexer
Retours
Promise<ParseTreePattern>
Hérité de Parser.compileParseTreePattern
consume()
Consommez et retournez le symbole actuel.
Par exemple, étant donné que l’entrée A
suivante est le symbole de tête de regard actuel, cette fonction déplace le curseur vers B
et retourne A
.
A B
^
Si l’analyseur n’est pas en mode de récupération d’erreur, le symbole consommé est ajouté à l’arborescence d’analyse à l’aide <xref:ParserRuleContext%23addChild(TerminalNode)>de et <xref:ParseTreeListener%23visitTerminal> est appelé sur tous les écouteurs d’analyse. Si l’analyseur est en mode de récupération d’erreur, le symbole consommé est ajouté à l’arborescence d’analyse à l’aide de [Token)](xref:%23createErrorNode(ParserRuleContext%2C) puis <xref:ParserRuleContext%23addErrorNode(ErrorNode)> et <xref:ParseTreeListener%23visitErrorNode> est appelé sur tous les écouteurs d’analyse.
function consume(): Token
Retours
Token
Hérité de Parser.consume
createErrorNode(ParserRuleContext, Token)
Comment créer un nœud d’erreur, en fonction d’un jeton, associé à un parent. En règle générale, le nœud d’erreur à créer n’est pas une fonction du parent.
function createErrorNode(parent: ParserRuleContext, t: Token): ErrorNode
Paramètres
- parent
-
ParserRuleContext
- t
-
Token
Retours
ErrorNode
Hérité de Parser.createErrorNode
createTerminalNode(ParserRuleContext, Token)
Comment créer un nœud feuille de jeton associé à un parent. En règle générale, le nœud terminal à créer n’est pas une fonction du parent.
function createTerminalNode(parent: ParserRuleContext, t: Token): TerminalNode
Paramètres
- parent
-
ParserRuleContext
- t
-
Token
Retours
TerminalNode
Hérité de Parser.createTerminalNode
dumpDFA()
À des fins de débogage et à d’autres fins.
function dumpDFA()
Hérité de Parser.dumpDFA
enterLeftFactoredRule(ParserRuleContext, number, number)
function enterLeftFactoredRule(localctx: ParserRuleContext, state: number, ruleIndex: number)
Paramètres
- localctx
-
ParserRuleContext
- state
-
number
- ruleIndex
-
number
Hérité de Parser.enterLeftFactoredRule
enterOuterAlt(ParserRuleContext, number)
function enterOuterAlt(localctx: ParserRuleContext, altNum: number)
Paramètres
- localctx
-
ParserRuleContext
- altNum
-
number
Hérité de Parser.enterOuterAlt
enterRecursionRule(ParserRuleContext, number, number, number)
function enterRecursionRule(localctx: ParserRuleContext, state: number, ruleIndex: number, precedence: number)
Paramètres
- localctx
-
ParserRuleContext
- state
-
number
- ruleIndex
-
number
- precedence
-
number
Hérité de Parser.enterRecursionRule
enterRule(ParserRuleContext, number, number)
Toujours appelé par les analyseurs générés lors de l’entrée dans une règle. Le champ d’accès <xref:%23_ctx> obtient le contexte actuel.
function enterRule(localctx: ParserRuleContext, state: number, ruleIndex: number)
Paramètres
- localctx
-
ParserRuleContext
- state
-
number
- ruleIndex
-
number
Hérité de Parser.enterRule
exitRule()
function exitRule()
Hérité de Parser.exitRule
getATNWithBypassAlts()
L’ATN avec des alternatives de contournement est coûteux à créer. Nous le créons donc paresseusement.
@ si l’analyseur actuel n’implémente pas la serializedATN
propriété .
function getATNWithBypassAlts(): ATN
Retours
ATN
Hérité de Parser.getATNWithBypassAlts
getDFAStrings()
À des fins de débogage et à d’autres fins.
function getDFAStrings(): string[]
Retours
string[]
Hérité de Parser.getDFAStrings
getErrorHeader(RecognitionException)
Quel est l’en-tête d’erreur, normalement des informations de position de ligne/caractère ?
function getErrorHeader(e: RecognitionException): string
Paramètres
- e
-
RecognitionException
Retours
string
Hérité de Recognizer.getErrorHeader
getErrorListenerDispatch()
function getErrorListenerDispatch(): ParserErrorListener
Retours
ParserErrorListener
Hérité de Parser.getErrorListenerDispatch
getErrorListeners()
function getErrorListeners(): Array<ANTLRErrorListener<Token>>
Retours
Array<ANTLRErrorListener<Token>>
Hérité de Recognizer.getErrorListeners
getExpectedTokens()
Calcule l’ensemble de symboles d’entrée qui peuvent suivre l’état et le contexte actuels de l’analyseur, comme indiqué par <xref:%23getState> et <xref:%23getContext>, respectivement.
Consultez ATN#getExpectedTokens(int, RuleContext)
function getExpectedTokens(): IntervalSet
Retours
IntervalSet
Hérité de Parser.getExpectedTokens
getExpectedTokensWithinCurrentRule()
function getExpectedTokensWithinCurrentRule(): IntervalSet
Retours
IntervalSet
Hérité de Parser.getExpectedTokensWithinCurrentRule
getInvokingContext(number)
function getInvokingContext(ruleIndex: number): ParserRuleContext | undefined
Paramètres
- ruleIndex
-
number
Retours
ParserRuleContext | undefined
Hérité de Parser.getInvokingContext
getParseListeners()
function getParseListeners(): ParseTreeListener[]
Retours
ParseTreeListener[]
Hérité de Parser.getParseListeners
getRuleIndex(string)
Obtenez l’index d’une règle (c’est-à-dire le RULE_ruleName
champ) ou -1 si introuvable.
function getRuleIndex(ruleName: string): number
Paramètres
- ruleName
-
string
Retours
number
Hérité de Parser.getRuleIndex
getRuleIndexMap()
Obtenez un mappage des noms de règles aux index de règle. Utilisé pour la compilation de modèles XPath et d’arborescence.
function getRuleIndexMap(): ReadonlyMap<string, number>
Retours
ReadonlyMap<string, number>
Hérité de Recognizer.getRuleIndexMap
getRuleInvocationStack(RuleContext)
Return List<String> des noms de règle dans votre instance d’analyseur menant à un appel à la règle actuelle. Vous pouvez remplacer si vous souhaitez obtenir plus de détails, tels que les informations de fichier/ligne de l’endroit où, dans l’ATN, une règle est appelée. Cela est très utile pour les messages d’erreur.
function getRuleInvocationStack(ctx?: RuleContext): string[]
Paramètres
- ctx
-
RuleContext
Retours
string[]
Hérité de Parser.getRuleInvocationStack
getTokenType(string)
function getTokenType(tokenName: string): number
Paramètres
- tokenName
-
string
Retours
number
Hérité de Recognizer.getTokenType
getTokenTypeMap()
Obtenez un mappage des noms de jetons aux types de jetons. Utilisé pour la compilation de modèles XPath et d’arborescence.
function getTokenTypeMap(): ReadonlyMap<string, number>
Retours
ReadonlyMap<string, number>
Hérité de Recognizer.getTokenTypeMap
inContext(string)
function inContext(context: string): boolean
Paramètres
- context
-
string
Retours
boolean
Hérité de Parser.inContext
isExpectedToken(number)
Vérifie si vous pouvez ou non symbol
suivre l’état actuel dans l’ATN. Le comportement de cette méthode est équivalent à ce qui suit, mais est implémenté de telle sorte que l’ensemble de suivis contextuels complet n’ait pas besoin d’être construit explicitement.
return getExpectedTokens().contains(symbol);
function isExpectedToken(symbol: number): boolean
Paramètres
- symbol
-
number
type de symbole à vérifier
Retours
boolean
true
si symbol
peut suivre l’état actuel dans l’ATN, sinon false
.
Hérité de Parser.isExpectedToken
match(number)
Faites correspondre le symbole d’entrée actuel à ttype
. Si le type de symbole correspond, <xref:ANTLRErrorStrategy%23reportMatch> et <xref:%23consume> sont appelés pour terminer le processus de correspondance.
Si le type de symbole ne correspond pas, <xref:ANTLRErrorStrategy%23recoverInline> est appelé sur la stratégie d’erreur actuelle pour tenter de récupérer. Si <xref:%23getBuildParseTree> est true
et que l’index de jeton du symbole retourné par <xref:ANTLRErrorStrategy%23recoverInline> est -1, le symbole est ajouté à l’arborescence d’analyse en appelant [Jeton)](xref:%23createErrorNode(ParserRuleContext%2C) puis <xref:ParserRuleContext%23addErrorNode(ErrorNode)>.
function match(ttype: number): Token
Paramètres
- ttype
-
number
type de jeton à correspondre
Retours
Token
le symbole correspondant @ si le symbole d’entrée actuel ne correspondait ttype
pas et que la stratégie d’erreur n’a pas pu récupérer à partir du symbole incompatible
Hérité de Parser.match
matchWildcard()
Faire correspondre le symbole d’entrée actuel sous la forme d’un caractère générique. Si le type de symbole correspond (c’est-à-dire a une valeur supérieure à 0) <xref:ANTLRErrorStrategy%23reportMatch> et <xref:%23consume> sont appelés pour terminer le processus de correspondance.
Si le type de symbole ne correspond pas, <xref:ANTLRErrorStrategy%23recoverInline> est appelé sur la stratégie d’erreur actuelle pour tenter de récupérer. Si <xref:%23getBuildParseTree> est true
et que l’index de jeton du symbole retourné par <xref:ANTLRErrorStrategy%23recoverInline> est -1, le symbole est ajouté à l’arborescence d’analyse en appelant [Jeton)](xref:Parser%23createErrorNode(ParserRuleContext%2C) puis <xref:ParserRuleContext%23addErrorNode(ErrorNode)>.
function matchWildcard(): Token
Retours
Token
le symbole correspondant @ si le symbole d’entrée actuel ne correspondait pas à un caractère générique et que la stratégie d’erreur n’a pas pu récupérer à partir du symbole incompatible
Hérité de Parser.matchWildcard
notifyErrorListeners(string)
function notifyErrorListeners(msg: string)
Paramètres
- msg
-
string
Hérité de Parser.notifyErrorListeners
notifyErrorListeners(string, Token | null, RecognitionException | undefined)
function notifyErrorListeners(msg: string, offendingToken: Token | null, e: RecognitionException | undefined)
Paramètres
- msg
-
string
- offendingToken
-
Token | null
- e
-
RecognitionException | undefined
Hérité de Parser.notifyErrorListeners
precpred(RuleContext, number)
function precpred(localctx: RuleContext, precedence: number): boolean
Paramètres
- localctx
-
RuleContext
- precedence
-
number
Retours
boolean
Hérité de Parser.precpred
pushNewRecursionContext(ParserRuleContext, number, number)
Comme <xref:%23enterRule> mais pour les règles récursives. Faites du contexte actuel l’enfant du localctx entrant.
function pushNewRecursionContext(localctx: ParserRuleContext, state: number, ruleIndex: number)
Paramètres
- localctx
-
ParserRuleContext
- state
-
number
- ruleIndex
-
number
Hérité de Parser.pushNewRecursionContext
removeErrorListener(ANTLRErrorListener<Token>)
function removeErrorListener(listener: ANTLRErrorListener<Token>)
Paramètres
- listener
-
ANTLRErrorListener<Token>
Hérité de Recognizer.removeErrorListener
removeErrorListeners()
function removeErrorListeners()
Hérité de Recognizer.removeErrorListeners
removeParseListener(ParseTreeListener)
Supprimez listener
de la liste des écouteurs d’analyse.
Si listener
est undefined
ou n’a pas été ajouté en tant qu’écouteur d’analyse, cette méthode ne fait rien.
Voir #addParseListener
function removeParseListener(listener: ParseTreeListener)
Paramètres
- listener
-
ParseTreeListener
l’écouteur à supprimer
Hérité de Parser.removeParseListener
removeParseListeners()
Supprimez tous les écouteurs d’analyse.
Voir #addParseListener
function removeParseListeners()
Hérité de Parser.removeParseListeners
reset()
réinitialiser l’état de l’analyseur
function reset()
Hérité de Parser.reset
reset(boolean)
function reset(resetInput: boolean)
Paramètres
- resetInput
-
boolean
Hérité de Parser.reset
setProfile(boolean)
function setProfile(profile: boolean): Promise<void>
Paramètres
- profile
-
boolean
Retours
Promise<void>
Hérité de Parser.setProfile
unrollRecursionContexts(ParserRuleContext)
function unrollRecursionContexts(_parentctx: ParserRuleContext)
Paramètres
- _parentctx
-
ParserRuleContext
Hérité de Parser.unrollRecursionContexts