Partager via


LGTemplateParser class

Extends

Parser

Constructeurs

LGTemplateParser(TokenStream)

Propriétés

CASE
COMMENTS
DASH
DEFAULT
ELSE
ELSEIF
ESCAPE_CHARACTER
ESCAPE_CHARACTER_IN_STRUCTURE_BODY
EXPRESSION
EXPRESSION_IN_STRUCTURE_BODY
grammarFileName
IF
INVALID_TOKEN
LEFT_SQUARE_BRACKET
MULTILINE_PREFIX
MULTILINE_SUFFIX
NEWLINE
NEWLINE_IN_BODY
NEWLINE_IN_STRUCTURE_NAME
ruleNames
ruleNames
RULE_body
RULE_errorStructuredName
RULE_errorStructureLine
RULE_errorTemplateString
RULE_expression
RULE_expressionInStructure
RULE_ifCondition
RULE_ifConditionRule
RULE_ifElseTemplateBody
RULE_keyValueStructureLine
RULE_keyValueStructureValue
RULE_normalTemplateBody
RULE_normalTemplateString
RULE_structuredBodyContentLine
RULE_structuredBodyEndLine
RULE_structuredBodyNameLine
RULE_structuredTemplateBody
RULE_switchCaseRule
RULE_switchCaseStat
RULE_switchCaseTemplateBody
RULE_template
RULE_templateString
serializedATN
STRUCTURED_BODY_END
STRUCTURED_COMMENTS
STRUCTURED_NEWLINE
STRUCTURE_EQUALS
STRUCTURE_IDENTIFIER
STRUCTURE_NAME
STRUCTURE_OR_MARK
SWITCH
TEXT
TEXT_IN_STRUCTURE_BODY
TEXT_IN_STRUCTURE_NAME
VOCABULARY
vocabulary
WS
WS_IN_BODY
WS_IN_STRUCTURE_BODY
WS_IN_STRUCTURE_NAME

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

body()
errorStructuredName()
errorStructureLine()
errorTemplateString()
expression()
expressionInStructure()
ifCondition()
ifConditionRule()
ifElseTemplateBody()
keyValueStructureLine()
keyValueStructureValue()
normalTemplateBody()
normalTemplateString()
structuredBodyContentLine()
structuredBodyEndLine()
structuredBodyNameLine()
structuredTemplateBody()
switchCaseRule()
switchCaseStat()
switchCaseTemplateBody()
template()
templateString()

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

LGTemplateParser(TokenStream)

new LGTemplateParser(input: TokenStream)

Paramètres

input

TokenStream

Détails de la propriété

CASE

public static CASE: 14 = 14

Valeur de propriété

14

COMMENTS

public static COMMENTS: 3 = 3

Valeur de propriété

3

DASH

public static DASH: 4 = 4

Valeur de propriété

4

DEFAULT

public static DEFAULT: 15 = 15

Valeur de propriété

15

ELSE

public static ELSE: 12 = 12

Valeur de propriété

12

ELSEIF

public static ELSEIF: 11 = 11

Valeur de propriété

11

ESCAPE_CHARACTER

public static ESCAPE_CHARACTER: 16 = 16

Valeur de propriété

16

ESCAPE_CHARACTER_IN_STRUCTURE_BODY

public static ESCAPE_CHARACTER_IN_STRUCTURE_BODY: 31 = 31

Valeur de propriété

31

EXPRESSION

public static EXPRESSION: 17 = 17

Valeur de propriété

17

EXPRESSION_IN_STRUCTURE_BODY

public static EXPRESSION_IN_STRUCTURE_BODY: 32 = 32

Valeur de propriété

32

grammarFileName

string grammarFileName

Valeur de propriété

string

IF

public static IF: 10 = 10

Valeur de propriété

10

INVALID_TOKEN

public static INVALID_TOKEN: 6 = 6

Valeur de propriété

6

LEFT_SQUARE_BRACKET

public static LEFT_SQUARE_BRACKET: 5 = 5

Valeur de propriété

5

MULTILINE_PREFIX

public static MULTILINE_PREFIX: 8 = 8

Valeur de propriété

8

MULTILINE_SUFFIX

public static MULTILINE_SUFFIX: 19 = 19

Valeur de propriété

19

NEWLINE

public static NEWLINE: 2 = 2

Valeur de propriété

2

NEWLINE_IN_BODY

public static NEWLINE_IN_BODY: 9 = 9

Valeur de propriété

9

NEWLINE_IN_STRUCTURE_NAME

public static NEWLINE_IN_STRUCTURE_NAME: 21 = 21

Valeur de propriété

21

ruleNames

public static ruleNames: string[] = [
		"template", "body", "structuredTemplateBody", "structuredBodyNameLine", 
		"errorStructuredName", "structuredBodyContentLine", "errorStructureLine", 
		"keyValueStructureLine", "keyValueStructureValue", "structuredBodyEndLine", 
		"normalTemplateBody", "templateString", "normalTemplateString", "errorTemplateString", 
		"ifElseTemplateBody", "ifConditionRule", "ifCondition", "switchCaseTemplateBody", 
		"switchCaseRule", "switchCaseStat", "expression", "expressionInStructure",
	]

Valeur de propriété

string[]

ruleNames

string[] ruleNames

Valeur de propriété

string[]

RULE_body

public static RULE_body: 1 = 1

Valeur de propriété

1

RULE_errorStructuredName

public static RULE_errorStructuredName: 4 = 4

Valeur de propriété

4

RULE_errorStructureLine

public static RULE_errorStructureLine: 6 = 6

Valeur de propriété

6

RULE_errorTemplateString

public static RULE_errorTemplateString: 13 = 13

Valeur de propriété

13

RULE_expression

public static RULE_expression: 20 = 20

Valeur de propriété

20

RULE_expressionInStructure

public static RULE_expressionInStructure: 21 = 21

Valeur de propriété

21

RULE_ifCondition

public static RULE_ifCondition: 16 = 16

Valeur de propriété

16

RULE_ifConditionRule

public static RULE_ifConditionRule: 15 = 15

Valeur de propriété

15

RULE_ifElseTemplateBody

public static RULE_ifElseTemplateBody: 14 = 14

Valeur de propriété

14

RULE_keyValueStructureLine

public static RULE_keyValueStructureLine: 7 = 7

Valeur de propriété

7

RULE_keyValueStructureValue

public static RULE_keyValueStructureValue: 8 = 8

Valeur de propriété

8

RULE_normalTemplateBody

public static RULE_normalTemplateBody: 10 = 10

Valeur de propriété

10

RULE_normalTemplateString

public static RULE_normalTemplateString: 12 = 12

Valeur de propriété

12

RULE_structuredBodyContentLine

public static RULE_structuredBodyContentLine: 5 = 5

Valeur de propriété

5

RULE_structuredBodyEndLine

public static RULE_structuredBodyEndLine: 9 = 9

Valeur de propriété

9

RULE_structuredBodyNameLine

public static RULE_structuredBodyNameLine: 3 = 3

Valeur de propriété

3

RULE_structuredTemplateBody

public static RULE_structuredTemplateBody: 2 = 2

Valeur de propriété

2

RULE_switchCaseRule

public static RULE_switchCaseRule: 18 = 18

Valeur de propriété

18

RULE_switchCaseStat

public static RULE_switchCaseStat: 19 = 19

Valeur de propriété

19

RULE_switchCaseTemplateBody

public static RULE_switchCaseTemplateBody: 17 = 17

Valeur de propriété

17

RULE_template

public static RULE_template: 0 = 0

Valeur de propriété

0

RULE_templateString

public static RULE_templateString: 11 = 11

Valeur de propriété

11

serializedATN

string serializedATN

Valeur de propriété

string

STRUCTURED_BODY_END

public static STRUCTURED_BODY_END: 27 = 27

Valeur de propriété

27

STRUCTURED_COMMENTS

public static STRUCTURED_COMMENTS: 24 = 24

Valeur de propriété

24

STRUCTURED_NEWLINE

public static STRUCTURED_NEWLINE: 26 = 26

Valeur de propriété

26

STRUCTURE_EQUALS

public static STRUCTURE_EQUALS: 29 = 29

Valeur de propriété

29

STRUCTURE_IDENTIFIER

public static STRUCTURE_IDENTIFIER: 28 = 28

Valeur de propriété

28

STRUCTURE_NAME

public static STRUCTURE_NAME: 22 = 22

Valeur de propriété

22

STRUCTURE_OR_MARK

public static STRUCTURE_OR_MARK: 30 = 30

Valeur de propriété

30

SWITCH

public static SWITCH: 13 = 13

Valeur de propriété

13

TEXT

public static TEXT: 18 = 18

Valeur de propriété

18

TEXT_IN_STRUCTURE_BODY

public static TEXT_IN_STRUCTURE_BODY: 33 = 33

Valeur de propriété

33

TEXT_IN_STRUCTURE_NAME

public static TEXT_IN_STRUCTURE_NAME: 23 = 23

Valeur de propriété

23

VOCABULARY

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

Valeur de propriété

Vocabulary

vocabulary

Vocabulary vocabulary

Valeur de propriété

Vocabulary

WS

public static WS: 1 = 1

Valeur de propriété

1

WS_IN_BODY

public static WS_IN_BODY: 7 = 7

Valeur de propriété

7

WS_IN_STRUCTURE_BODY

public static WS_IN_STRUCTURE_BODY: 25 = 25

Valeur de propriété

25

WS_IN_STRUCTURE_NAME

public static WS_IN_STRUCTURE_NAME: 20 = 20

Valeur de propriété

20

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

body()

function body(): BodyContext

Retours

errorStructuredName()

function errorStructuredName(): ErrorStructuredNameContext

Retours

errorStructureLine()

function errorStructureLine(): ErrorStructureLineContext

Retours

errorTemplateString()

function errorTemplateString(): ErrorTemplateStringContext

Retours

expression()

function expression(): ExpressionContext

Retours

expressionInStructure()

function expressionInStructure(): ExpressionInStructureContext

Retours

ifCondition()

function ifCondition(): IfConditionContext

Retours

ifConditionRule()

function ifConditionRule(): IfConditionRuleContext

Retours

ifElseTemplateBody()

function ifElseTemplateBody(): IfElseTemplateBodyContext

Retours

keyValueStructureLine()

function keyValueStructureLine(): KeyValueStructureLineContext

Retours

keyValueStructureValue()

function keyValueStructureValue(): KeyValueStructureValueContext

Retours

normalTemplateBody()

function normalTemplateBody(): NormalTemplateBodyContext

Retours

normalTemplateString()

function normalTemplateString(): NormalTemplateStringContext

Retours

structuredBodyContentLine()

function structuredBodyContentLine(): StructuredBodyContentLineContext

Retours

structuredBodyEndLine()

function structuredBodyEndLine(): StructuredBodyEndLineContext

Retours

structuredBodyNameLine()

function structuredBodyNameLine(): StructuredBodyNameLineContext

Retours

structuredTemplateBody()

function structuredTemplateBody(): StructuredTemplateBodyContext

Retours

switchCaseRule()

function switchCaseRule(): SwitchCaseRuleContext

Retours

switchCaseStat()

function switchCaseStat(): SwitchCaseStatContext

Retours

switchCaseTemplateBody()

function switchCaseTemplateBody(): SwitchCaseTemplateBodyContext

Retours

template()

function template(): TemplateContext

Retours

templateString()

function templateString(): TemplateStringContext

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