Partager via


LGFileParser class

Extends

Parser

Constructeurs

LGFileParser(TokenStream)

Propriétés

COMMENT
ESCAPE_CHARACTER
grammarFileName
IMPORT
INLINE_MULTILINE
INVALID_LINE
MULTILINE_PREFIX
MULTILINE_SUFFIX
MULTILINE_TEXT
NEWLINE
OPTION
ruleNames
ruleNames
RULE_commentDefinition
RULE_errorDefinition
RULE_file
RULE_importDefinition
RULE_optionDefinition
RULE_paragraph
RULE_templateBody
RULE_templateBodyLine
RULE_templateDefinition
RULE_templateNameLine
serializedATN
TEMPLATE_BODY
TEMPLATE_NAME_LINE
VOCABULARY
vocabulary

Propriétés héritées

atn

Obtenez le serializedATN utilisé par le module de reconnaissance pour la prédiction.

buildParseTree

Suivez les objets <xref:ParserRuleContext> pendant l’analyse et connectez-les à l’aide de la liste <xref:ParserRuleContext%23children> afin qu’il forme une arborescence d’analyse. La <xref:ParserRuleContext> retournée à partir de 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ègle pointent uniquement vers le haut. Lorsqu’une règle se termine, elle retourne le contexte, mais qui obtient le garbage collected si personne ne contient de référence. Il pointe vers le haut, mais personne ne le pointe.

Lorsque nous créons des arborescences d’analyse, nous ajoutons tous ces contextes à <xref:ParserRuleContext%23children> liste. Les contextes ne sont alors pas candidats au garbage collection.

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.

EOF
errorHandler
inputStream

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.

isMatchedEOF
isTrace

Pendant un analyse, il est parfois utile d’écouter les événements d’entrée et de sortie de la règle, ainsi que les correspondances de jeton. Il s’agit d’un débogage rapide et sale.

numberOfSyntaxErrors

Obtient le nombre d’erreurs de syntaxe signalées lors de l’analyse. Cette valeur est incrémentée chaque fois que <xref:%23notifyErrorListeners> est appelée.

Voir #notifyErrorListeners

parseInfo
precedence

Obtenez le niveau de précédence de la règle de précédence la plus élevée.

ruleContext
sourceName
state

Indiquez que le module de reconnaissance a modifié l’état interne qui est cohérent avec l’état ATN passé. De cette façon, nous savons toujours où nous sommes dans l’ATN à mesure que l’analyseur va le long. Les objets de contexte de règle forment une pile qui nous permet de voir la pile des règles d’appel. Combinez cette opération et nous disposons d’informations de configuration ATN complètes.

tokenFactory

Méthodes

commentDefinition()
errorDefinition()
file()
importDefinition()
optionDefinition()
paragraph()
templateBody()
templateBodyLine()
templateDefinition()
templateNameLine()

Méthodes héritées

action(RuleContext | undefined, number, number)
addErrorListener(ANTLRErrorListener<Token>)
addParseListener(ParseTreeListener)

Inscrit listener pour recevoir des événements pendant le processus d’analyse. Pour prendre en charge les transformations grammaticales de conservation de sortie (y compris, mais pas limité à la suppression de la récursivité gauche, à la génération automatisée de facteur gauche et à la génération de code optimisée), les appels aux méthodes d’écouteur pendant l’analyse peuvent différer sensiblement 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 pour les entrées identiques que les appels aux méthodes d’écouteur seront identiques.

  • 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ée pour générer l’analyseur peut modifier le comportement des appels de l’écouteur.
compileParseTreePattern(string, number)

Méthode préférée d’obtention d’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");
compileParseTreePattern(string, number, Lexer)

Identique à [int)](xref :%23compileParseTreePattern(String%2C) mais spécifiez un LGFileLexer plutôt que d’essayer de le déduire de cet analyseur.

consume()

Utilisez et renvoyez le symbole actuel. Par exemple, étant donné l’entrée suivante avec A étant le symbole de lookahead 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 de <xref:ParserRuleContext%23addChild(TerminalNode)>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.

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.

createTerminalNode(ParserRuleContext, Token)

Comment créer un nœud feuille de jeton associé à un parent. En règle générale, le nœud de terminal à créer n’est pas une fonction du parent.

dumpDFA()

Pour le débogage et d’autres fins.

enterLeftFactoredRule(ParserRuleContext, number, number)
enterOuterAlt(ParserRuleContext, number)
enterRecursionRule(ParserRuleContext, number, number, number)
enterRule(ParserRuleContext, number, number)

Toujours appelé par les analyseurs générés lors de l’entrée dans une règle. Le champ Access <xref:%23_ctx> obtenir le contexte actuel.

exitRule()
getATNWithBypassAlts()

L’ATN avec des alternatives de contournement est coûteux à créer afin que nous le créons de manière différée. @ si l’analyseur actuel n’implémente pas la propriété serializedATN.

getDFAStrings()

Pour le débogage et d’autres fins.

getErrorHeader(RecognitionException)

Qu’est-ce que l’en-tête d’erreur, normalement les informations de position de ligne/caractère ?

getErrorListenerDispatch()
getErrorListeners()
getExpectedTokens()

Calcule le jeu de symboles d’entrée qui peuvent suivre l’état et le contexte de l’analyseur actuel, comme indiqué par <xref:%23getState> et <xref:%23getContext>, respectivement.

Voir ATN#getExpectedTokens(int, RuleContext)

getExpectedTokensWithinCurrentRule()
getInvokingContext(number)
getParseListeners()
getRuleIndex(string)

Obtenez l’index d’une règle (par exemple, RULE_ruleName champ) ou -1 s’il n’est pas trouvé.

getRuleIndexMap()

Obtenir une carte des noms de règles aux index de règle. Utilisé pour la compilation de modèles XPath et d’arborescence.

getRuleInvocationStack(RuleContext)

Retourne la liste<chaîne> 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’emplacement où, dans atN, une règle est appelée. Cela est très utile pour les messages d’erreur.

getTokenType(string)
getTokenTypeMap()

Obtenir un mappage des noms de jetons aux types de jetons. Utilisé pour la compilation de modèles XPath et d’arborescence.

inContext(string)
isExpectedToken(number)

Vérifie si symbol pouvez suivre l’état actuel dans atN. Le comportement de cette méthode équivaut à ce qui suit, mais il est implémenté de sorte que le jeu de suivis respectant le contexte complet n’a pas besoin d’être construit explicitement.

return getExpectedTokens().contains(symbol);
match(number)

Mettre en correspondance le symbole d’entrée actuel par rapport à 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 la récupération. 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 [Token)](xref :%23createErrorNode(ParserRuleContext%2C) puis <xref:ParserRuleContext%23addErrorNode(ErrorNode)>.

matchWildcard()

Mettre en correspondance le symbole d’entrée actuel en tant que caractère générique. Si le type de symbole correspond (par exemple, 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 la récupération. 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 [Token)](xref :Parser%23createErrorNode(ParserRuleContext%2C) puis <xref:ParserRuleContext%23addErrorNode(ErrorNode)>.

notifyErrorListeners(string)
notifyErrorListeners(string, Token | null, RecognitionException | undefined)
precpred(RuleContext, number)
pushNewRecursionContext(ParserRuleContext, number, number)

Comme <xref:%23enterRule> mais pour les règles récursives. Définissez le contexte actuel comme enfant du localctx entrant.

removeErrorListener(ANTLRErrorListener<Token>)
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

removeParseListeners()

Supprimez tous les écouteurs d’analyse.

Voir #addParseListener

reset()

réinitialiser l’état de l’analyseur

reset(boolean)
sempred(RuleContext | undefined, number, number)
setProfile(boolean)
unrollRecursionContexts(ParserRuleContext)

Détails du constructeur

LGFileParser(TokenStream)

new LGFileParser(input: TokenStream)

Paramètres

input

TokenStream

Détails de la propriété

COMMENT

public static COMMENT: 3 = 3

Valeur de propriété

3

ESCAPE_CHARACTER

public static ESCAPE_CHARACTER: 11 = 11

Valeur de propriété

11

grammarFileName

string grammarFileName

Valeur de propriété

string

IMPORT

public static IMPORT: 4 = 4

Valeur de propriété

4

INLINE_MULTILINE

public static INLINE_MULTILINE: 6 = 6

Valeur de propriété

6

INVALID_LINE

public static INVALID_LINE: 9 = 9

Valeur de propriété

9

MULTILINE_PREFIX

public static MULTILINE_PREFIX: 7 = 7

Valeur de propriété

7

MULTILINE_SUFFIX

public static MULTILINE_SUFFIX: 10 = 10

Valeur de propriété

10

MULTILINE_TEXT

public static MULTILINE_TEXT: 12 = 12

Valeur de propriété

12

NEWLINE

public static NEWLINE: 1 = 1

Valeur de propriété

1

OPTION

public static OPTION: 2 = 2

Valeur de propriété

2

ruleNames

public static ruleNames: string[] = [
		"file", "paragraph", "commentDefinition", "importDefinition", "optionDefinition", 
		"errorDefinition", "templateDefinition", "templateNameLine", "templateBody", 
		"templateBodyLine",
	]

Valeur de propriété

string[]

ruleNames

string[] ruleNames

Valeur de propriété

string[]

RULE_commentDefinition

public static RULE_commentDefinition: 2 = 2

Valeur de propriété

2

RULE_errorDefinition

public static RULE_errorDefinition: 5 = 5

Valeur de propriété

5

RULE_file

public static RULE_file: 0 = 0

Valeur de propriété

0

RULE_importDefinition

public static RULE_importDefinition: 3 = 3

Valeur de propriété

3

RULE_optionDefinition

public static RULE_optionDefinition: 4 = 4

Valeur de propriété

4

RULE_paragraph

public static RULE_paragraph: 1 = 1

Valeur de propriété

1

RULE_templateBody

public static RULE_templateBody: 8 = 8

Valeur de propriété

8

RULE_templateBodyLine

public static RULE_templateBodyLine: 9 = 9

Valeur de propriété

9

RULE_templateDefinition

public static RULE_templateDefinition: 6 = 6

Valeur de propriété

6

RULE_templateNameLine

public static RULE_templateNameLine: 7 = 7

Valeur de propriété

7

serializedATN

string serializedATN

Valeur de propriété

string

TEMPLATE_BODY

public static TEMPLATE_BODY: 8 = 8

Valeur de propriété

8

TEMPLATE_NAME_LINE

public static TEMPLATE_NAME_LINE: 5 = 5

Valeur de propriété

5

VOCABULARY

public static VOCABULARY: Vocabulary = new VocabularyImpl(LGFileParser._LITERAL_NAMES, LGFileParser._SYMBOLIC_NAMES, [])

Valeur de propriété

Vocabulary

vocabulary

Vocabulary vocabulary

Valeur de propriété

Vocabulary

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ée de Recognizer.atn

buildParseTree

Suivez les objets <xref:ParserRuleContext> pendant l’analyse et connectez-les à l’aide de la liste <xref:ParserRuleContext%23children> afin qu’il forme une arborescence d’analyse. La <xref:ParserRuleContext> retournée à partir de 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ègle pointent uniquement vers le haut. Lorsqu’une règle se termine, elle retourne le contexte, mais qui obtient le garbage collected si personne ne contient de référence. Il pointe vers le haut, mais personne ne le pointe.

Lorsque nous créons des arborescences d’analyse, nous ajoutons tous ces contextes à <xref:ParserRuleContext%23children> liste. Les contextes ne sont alors pas candidats au garbage collection.

buildParseTree: boolean

Valeur de propriété

boolean

héritée de Parser.buildParseTree

context

context: ParserRuleContext

Valeur de propriété

ParserRuleContext

héritée 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ée de Parser.currentToken

EOF

static EOF: number

Valeur de propriété

number

héritée de Recognizer.EOF

errorHandler

errorHandler: ANTLRErrorStrategy

Valeur de propriété

ANTLRErrorStrategy

héritée de parser.errorHandler

inputStream

Définissez le flux de jetons et réinitialisez l’analyseur.

inputStream: TokenStream

Valeur de propriété

TokenStream

héritée 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ée de Recognizer.interpreter

isMatchedEOF

isMatchedEOF: boolean

Valeur de propriété

boolean

héritée de Parser.isMatchedEOF

isTrace

Pendant un analyse, il est parfois utile d’écouter les événements d’entrée et de sortie de la règle, ainsi que les correspondances de jeton. Il s’agit d’un débogage rapide et sale.

isTrace: boolean

Valeur de propriété

boolean

héritée de Parser.isTrace

numberOfSyntaxErrors

Obtient le nombre d’erreurs de syntaxe signalées lors de l’analyse. Cette valeur est incrémentée chaque fois que <xref:%23notifyErrorListeners> est appelée.

Voir #notifyErrorListeners

numberOfSyntaxErrors: number

Valeur de propriété

number

héritée de Parser.numberOfSyntaxErrors

parseInfo

parseInfo: Promise<ParseInfo | undefined>

Valeur de propriété

Promise<ParseInfo | undefined>

héritée de Parser.parseInfo

precedence

Obtenez le niveau de précédence de la règle de précédence la plus élevée.

precedence: number

Valeur de propriété

number

héritée de Parser.precedence

ruleContext

ruleContext: ParserRuleContext

Valeur de propriété

ParserRuleContext

héritée de Parser.ruleContext

sourceName

sourceName: string

Valeur de propriété

string

héritée de Parser.sourceName

state

Indiquez que le module de reconnaissance a modifié l’état interne qui est cohérent avec l’état ATN passé. De cette façon, nous savons toujours où nous sommes dans l’ATN à mesure que l’analyseur va le long. Les objets de contexte de règle forment une pile qui nous permet de voir la pile des règles d’appel. Combinez cette opération et nous disposons d’informations de configuration ATN complètes.

state: number

Valeur de propriété

number

héritée de Recognizer.state

tokenFactory

tokenFactory: TokenFactory

Valeur de propriété

TokenFactory

héritée de Parser.tokenFactory

Détails de la méthode

commentDefinition()

function commentDefinition(): CommentDefinitionContext

Retours

errorDefinition()

function errorDefinition(): ErrorDefinitionContext

Retours

file()

function file(): FileContext

Retours

importDefinition()

function importDefinition(): ImportDefinitionContext

Retours

optionDefinition()

function optionDefinition(): OptionDefinitionContext

Retours

paragraph()

function paragraph(): ParagraphContext

Retours

templateBody()

function templateBody(): TemplateBodyContext

Retours

templateBodyLine()

function templateBodyLine(): TemplateBodyLineContext

Retours

templateDefinition()

function templateDefinition(): TemplateDefinitionContext

Retours

templateNameLine()

function templateNameLine(): TemplateNameLineContext

Retours

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ée de Recognizer.action

addErrorListener(ANTLRErrorListener<Token>)

function addErrorListener(listener: ANTLRErrorListener<Token>)

Paramètres

listener

ANTLRErrorListener<Token>

héritée de Recognizer.addErrorListener

addParseListener(ParseTreeListener)

Inscrit listener pour recevoir des événements pendant le processus d’analyse. Pour prendre en charge les transformations grammaticales de conservation de sortie (y compris, mais pas limité à la suppression de la récursivité gauche, à la génération automatisée de facteur gauche et à la génération de code optimisée), les appels aux méthodes d’écouteur pendant l’analyse peuvent différer sensiblement 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 pour les entrées identiques que les appels aux méthodes d’écouteur seront identiques.

  • 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ée 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ée de Parser.addParseListener

compileParseTreePattern(string, number)

Méthode préférée d’obtention d’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ée de Parser.compileParseTreePattern

compileParseTreePattern(string, number, Lexer)

Identique à [int)](xref :%23compileParseTreePattern(String%2C) mais spécifiez un LGFileLexer plutôt que 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ée de Parser.compileParseTreePattern

consume()

Utilisez et renvoyez le symbole actuel. Par exemple, étant donné l’entrée suivante avec A étant le symbole de lookahead 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 de <xref:ParserRuleContext%23addChild(TerminalNode)>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ée de l’analyseur.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ée 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 de 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ée de Parser.createTerminalNode

dumpDFA()

Pour le débogage et d’autres fins.

function dumpDFA()

héritée 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ée de Parser.enterLeftFactoredRule

enterOuterAlt(ParserRuleContext, number)

function enterOuterAlt(localctx: ParserRuleContext, altNum: number)

Paramètres

localctx

ParserRuleContext

altNum

number

héritée 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ée 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 Access <xref:%23_ctx> obtenir le contexte actuel.

function enterRule(localctx: ParserRuleContext, state: number, ruleIndex: number)

Paramètres

localctx

ParserRuleContext

state

number

ruleIndex

number

héritée de Parser.enterRule

exitRule()

function exitRule()

héritée de Parser.exitRule

getATNWithBypassAlts()

L’ATN avec des alternatives de contournement est coûteux à créer afin que nous le créons de manière différée. @ si l’analyseur actuel n’implémente pas la propriété serializedATN.

function getATNWithBypassAlts(): ATN

Retours

ATN

héritée de parser.getATNWithBypassAlts

getDFAStrings()

Pour le débogage et d’autres fins.

function getDFAStrings(): string[]

Retours

string[]

héritée de Parser.getDFAStrings

getErrorHeader(RecognitionException)

Qu’est-ce que l’en-tête d’erreur, normalement les informations de position de ligne/caractère ?

function getErrorHeader(e: RecognitionException): string

Paramètres

e

RecognitionException

Retours

string

héritée de Recognizer.getErrorHeader

getErrorListenerDispatch()

function getErrorListenerDispatch(): ParserErrorListener

Retours

ParserErrorListener

héritée de Parser.getErrorListenerDispatch

getErrorListeners()

function getErrorListeners(): Array<ANTLRErrorListener<Token>>

Retours

Array<ANTLRErrorListener<Token>>

héritée de Recognizer.getErrorListeners

getExpectedTokens()

Calcule le jeu de symboles d’entrée qui peuvent suivre l’état et le contexte de l’analyseur actuel, comme indiqué par <xref:%23getState> et <xref:%23getContext>, respectivement.

Voir ATN#getExpectedTokens(int, RuleContext)

function getExpectedTokens(): IntervalSet

Retours

IntervalSet

héritée de Parser.getExpectedTokens

getExpectedTokensWithinCurrentRule()

function getExpectedTokensWithinCurrentRule(): IntervalSet

Retours

IntervalSet

héritée de Parser.getExpectedTokensWithinCurrentRule

getInvokingContext(number)

function getInvokingContext(ruleIndex: number): ParserRuleContext | undefined

Paramètres

ruleIndex

number

Retours

ParserRuleContext | undefined

héritée de Parser.getInvokingContext

getParseListeners()

function getParseListeners(): ParseTreeListener[]

Retours

ParseTreeListener[]

héritée de Parser.getParseListeners

getRuleIndex(string)

Obtenez l’index d’une règle (par exemple, RULE_ruleName champ) ou -1 s’il n’est pas trouvé.

function getRuleIndex(ruleName: string): number

Paramètres

ruleName

string

Retours

number

héritée de Parser.getRuleIndex

getRuleIndexMap()

Obtenir une carte 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ée de Recognizer.getRuleIndexMap

getRuleInvocationStack(RuleContext)

Retourne la liste<chaîne> 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’emplacement où, dans 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ée de Parser.getRuleInvocationStack

getTokenType(string)

function getTokenType(tokenName: string): number

Paramètres

tokenName

string

Retours

number

héritée de Recognizer.getTokenType

getTokenTypeMap()

Obtenir 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ée de Recognizer.getTokenTypeMap

inContext(string)

function inContext(context: string): boolean

Paramètres

context

string

Retours

boolean

héritée de Parser.inContext

isExpectedToken(number)

Vérifie si symbol pouvez suivre l’état actuel dans atN. Le comportement de cette méthode équivaut à ce qui suit, mais il est implémenté de sorte que le jeu de suivis respectant le contexte complet n’a 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 pouvez suivre l’état actuel dans l’ATN, sinon false.

héritée de Parser.isExpectedToken

match(number)

Mettre en correspondance le symbole d’entrée actuel par rapport à 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 la récupération. 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 [Token)](xref :%23createErrorNode(ParserRuleContext%2C) puis <xref:ParserRuleContext%23addErrorNode(ErrorNode)>.

function match(ttype: number): Token

Paramètres

ttype

number

type de jeton à mettre en correspondance

Retours

Token

le symbole correspondant @ si le symbole d’entrée actuel ne correspondait pas ttype et que la stratégie d’erreur n’a pas pu récupérer à partir du symbole incompatible

héritée de Parser.match

matchWildcard()

Mettre en correspondance le symbole d’entrée actuel en tant que caractère générique. Si le type de symbole correspond (par exemple, 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 la récupération. 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 [Token)](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ée de Parser.matchWildcard

notifyErrorListeners(string)

function notifyErrorListeners(msg: string)

Paramètres

msg

string

héritée 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ée de Parser.notifyErrorListeners

precpred(RuleContext, number)

function precpred(localctx: RuleContext, precedence: number): boolean

Paramètres

localctx

RuleContext

precedence

number

Retours

boolean

héritée de parser.precpred

pushNewRecursionContext(ParserRuleContext, number, number)

Comme <xref:%23enterRule> mais pour les règles récursives. Définissez le contexte actuel comme enfant du localctx entrant.

function pushNewRecursionContext(localctx: ParserRuleContext, state: number, ruleIndex: number)

Paramètres

localctx

ParserRuleContext

state

number

ruleIndex

number

héritée de Parser.pushNewRecursionContext

removeErrorListener(ANTLRErrorListener<Token>)

function removeErrorListener(listener: ANTLRErrorListener<Token>)

Paramètres

listener

ANTLRErrorListener<Token>

héritée de Recognizer.removeErrorListener

removeErrorListeners()

function removeErrorListeners()

héritée 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

écouteur à supprimer

héritée de Parser.removeParseListener

removeParseListeners()

Supprimez tous les écouteurs d’analyse.

Voir #addParseListener

function removeParseListeners()

héritée de Parser.removeParseListeners

reset()

réinitialiser l’état de l’analyseur

function reset()

héritée de l’analyseur.reset

reset(boolean)

function reset(resetInput: boolean)

Paramètres

resetInput

boolean

héritée de l’analyseur.reset

sempred(RuleContext | undefined, number, number)

function sempred(_localctx: RuleContext | undefined, ruleIndex: number, actionIndex: number): boolean

Paramètres

_localctx

RuleContext | undefined

ruleIndex

number

actionIndex

number

Retours

boolean

héritée de Recognizer.sempred

setProfile(boolean)

function setProfile(profile: boolean): Promise<void>

Paramètres

profile

boolean

Retours

Promise<void>

héritée de Parser.setProfile

unrollRecursionContexts(ParserRuleContext)

function unrollRecursionContexts(_parentctx: ParserRuleContext)

Paramètres

_parentctx

ParserRuleContext

héritée de Parser.unrollRecursionContexts