Compartir a través de


LGTemplateParser class

Extends

Parser

Constructores

LGTemplateParser(TokenStream)

Propiedades

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

Propiedades heredadas

atn

Obtenga el serializedATN usado por el reconocedor para la predicción.

buildParseTree

Realice un seguimiento de los objetos <xref:ParserRuleContext> durante el análisis y conéguelos mediante la lista de <xref:ParserRuleContext%23children> para que forma un árbol de análisis. El <xref:ParserRuleContext> devuelto desde la regla de inicio representa la raíz del árbol de análisis. Tenga en cuenta que si no estamos creando árboles de análisis, los contextos de regla solo apuntan hacia arriba. Cuando se cierra una regla, devuelve el contexto, pero que obtiene la recolección de elementos no utilizados si nadie contiene una referencia. Apunta hacia arriba, pero nadie apunta.

Al crear árboles de análisis, vamos a agregar todos estos contextos a <xref:ParserRuleContext%23children> lista. Los contextos no son candidatos para la recolección de elementos no utilizados.

context
currentToken

La coincidencia debe devolver el símbolo de entrada actual, que se coloca en la etiqueta para la referencia del token asociado; Por ejemplo, x=ID.

EOF
errorHandler
inputStream

Establezca el flujo de token y restablezca el analizador.

interpreter

Establezca el intérprete atn usado por el reconocedor para la predicción.

isMatchedEOF
isTrace

Durante un análisis a veces resulta útil escuchar en la entrada de regla y los eventos de salida, así como las coincidencias de token. Esto es para la depuración rápida y sucia.

numberOfSyntaxErrors

Obtiene el número de errores de sintaxis notificados durante el análisis. Este valor se incrementa cada vez que se llama a <xref:%23notifyErrorListeners>.

Consulte #notifyErrorListeners

parseInfo
precedence

Obtenga el nivel de precedencia de la regla de precedencia superior.

ruleContext
sourceName
state

Indique que el reconocedor ha cambiado el estado interno que es coherente con el estado ATN pasado. De esta manera siempre sabemos dónde estamos en el ATN a medida que avanza el analizador. Los objetos de contexto de regla forman una pila que nos permite ver la pila de invocación de reglas. Combine esto y hemos completado la información de configuración de ATN.

tokenFactory

Métodos

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

Métodos heredados

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

Registra listener para recibir eventos durante el proceso de análisis. Para admitir transformaciones gramaticales que conservan los resultados (incluidas, entre otras, la eliminación de recursividad izquierda, el factoring izquierdo automatizado y la generación de código optimizada), las llamadas a métodos de escucha durante el análisis pueden diferir sustancialmente de las llamadas realizadas por <xref:ParseTreeWalker%23DEFAULT> usadas una vez completado el análisis. En concreto, los eventos de entrada y salida de reglas pueden producirse en un orden diferente durante el análisis que después del analizador. Además, se pueden omitir llamadas a determinados métodos de entrada de regla.

Con las siguientes excepciones específicas, las llamadas a eventos de escucha se deterministas, es decir, para una entrada idéntica, las llamadas a los métodos de escucha serán las mismas.

  • Las modificaciones en la gramática usada para generar código pueden cambiar el comportamiento de las llamadas del agente de escucha.
  • Las modificaciones en las opciones de la línea de comandos pasadas a ANTLR 4 al generar el analizador pueden cambiar el comportamiento de las llamadas del agente de escucha.
  • Cambiar la versión de la herramienta ANTLR usada para generar el analizador puede cambiar el comportamiento de las llamadas del agente de escucha.
compileParseTreePattern(string, number)

Método preferido para obtener un patrón de árbol. Por ejemplo, este es un ejemplo de uso:

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)

Igual que [int)](xref:%23compileParseTreePattern(String%2C) pero especifique un LGFileLexer en lugar de intentar deducirlo de este analizador.

consume()

Consuma y devuelva el símbolo actual. Por ejemplo, dada la siguiente entrada con A siendo el símbolo de lookahead actual, esta función mueve el cursor a B y devuelve A.

A B
^

Si el analizador no está en modo de recuperación de errores, el símbolo consumido se agrega al árbol de análisis mediante <xref:ParserRuleContext%23addChild(TerminalNode)>y se llama a <xref:ParseTreeListener%23visitTerminal> en los agentes de escucha de análisis. Si el analizador está en modo de recuperación de errores, se agrega el símbolo consumido al árbol de análisis mediante [Token)](xref:%23createErrorNode(ParserRuleContext%2C), se llama a <xref:ParserRuleContext%23addErrorNode(ErrorNode)> y <xref:ParseTreeListener%23visitErrorNode> en cualquier agente de escucha de análisis.

createErrorNode(ParserRuleContext, Token)

Cómo crear un nodo de error, dado un token, asociado a un elemento primario. Normalmente, el nodo de error que se va a crear no es una función del elemento primario.

createTerminalNode(ParserRuleContext, Token)

Cómo crear un nodo hoja de token asociado a un elemento primario. Normalmente, el nodo de terminal que se va a crear no es una función del elemento primario.

dumpDFA()

Para la depuración y otros fines.

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

Siempre se llama a los analizadores generados tras la entrada a una regla. Campo de acceso <xref:%23_ctx> obtener el contexto actual.

exitRule()
getATNWithBypassAlts()

El ATN con alternativas de omisión es costoso de crear, por lo que lo creamos diferir. @ si el analizador actual no implementa la propiedad serializedATN.

getDFAStrings()

Para la depuración y otros fines.

getErrorHeader(RecognitionException)

¿Cuál es el encabezado de error, normalmente información de posición de línea/carácter?

getErrorListenerDispatch()
getErrorListeners()
getExpectedTokens()

Calcula el conjunto de símbolos de entrada que podrían seguir el estado y el contexto actuales del analizador, tal como se indica en <xref:%23getState> y <xref:%23getContext>, respectivamente.

Consulte ATN#getExpectedTokens(int, RuleContext)

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

Obtiene el índice de una regla (es decir, RULE_ruleName campo) o -1 si no se encuentra.

getRuleIndexMap()

Obtenga una asignación de nombres de regla a índices de reglas. Se usa para la compilación de patrones de árbol y XPath.

getRuleInvocationStack(RuleContext)

Devuelve list<string> de los nombres de regla de la instancia del analizador que conduce a una llamada a la regla actual. Puede invalidar si desea más detalles, como la información de archivo o línea de dónde se invoca una regla en el ATN. Esto es muy útil para los mensajes de error.

getTokenType(string)
getTokenTypeMap()

Obtenga una asignación de nombres de token a tipos de token. Se usa para la compilación de patrones de árbol y XPath.

inContext(string)
isExpectedToken(number)

Comprueba si symbol puede seguir el estado actual en el ATN. El comportamiento de este método es equivalente a lo siguiente, pero se implementa de forma que no es necesario construir explícitamente el conjunto de seguimiento contextual completo.

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

Coincide con el símbolo de entrada actual con ttype. Si el tipo de símbolo coincide, se llama a <xref:ANTLRErrorStrategy%23reportMatch> y <xref:%23consume> para completar el proceso de coincidencia. Si el tipo de símbolo no coincide, se llama a <xref:ANTLRErrorStrategy%23recoverInline> en la estrategia de error actual para intentar la recuperación. Si <xref:%23getBuildParseTree> es true y el índice de token del símbolo devuelto por <xref:ANTLRErrorStrategy%23recoverInline> es -1, el símbolo se agrega al árbol de análisis llamando a [Token)](xref:%23createErrorNode(ParserRuleContext%2C), <xref:ParserRuleContext%23addErrorNode(ErrorNode)>.

matchWildcard()

Coincide con el símbolo de entrada actual como un carácter comodín. Si el tipo de símbolo coincide (es decir, tiene un valor mayor que 0), se llama a <xref:ANTLRErrorStrategy%23reportMatch> y <xref:%23consume> para completar el proceso de coincidencia. Si el tipo de símbolo no coincide, se llama a <xref:ANTLRErrorStrategy%23recoverInline> en la estrategia de error actual para intentar la recuperación. Si <xref:%23getBuildParseTree> es true y el índice de token del símbolo devuelto por <xref:ANTLRErrorStrategy%23recoverInline> es -1, el símbolo se agrega al árbol de análisis llamando a [Token)](xref:Parser%23createErrorNode(ParserRuleContext%2C), <xref:ParserRuleContext%23addErrorNode(ErrorNode)>.

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

Al igual que <xref:%23enterRule> pero para reglas recursivas. Convierta el contexto actual en el elemento secundario del localctx entrante.

removeErrorListener(ANTLRErrorListener<Token>)
removeErrorListeners()
removeParseListener(ParseTreeListener)

Quite listener de la lista de agentes de escucha de análisis. Si listener se undefined o no se ha agregado como agente de escucha de análisis, este método no hace nada.

Consulte #addParseListener

removeParseListeners()

Quite todos los agentes de escucha de análisis.

Consulte #addParseListener

reset()

restablecer el estado del analizador

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

Detalles del constructor

LGTemplateParser(TokenStream)

new LGTemplateParser(input: TokenStream)

Parámetros

input

TokenStream

Detalles de las propiedades

CASE

public static CASE: 14 = 14

Valor de propiedad

14

COMMENTS

public static COMMENTS: 3 = 3

Valor de propiedad

3

DASH

public static DASH: 4 = 4

Valor de propiedad

4

DEFAULT

public static DEFAULT: 15 = 15

Valor de propiedad

15

ELSE

public static ELSE: 12 = 12

Valor de propiedad

12

ELSEIF

public static ELSEIF: 11 = 11

Valor de propiedad

11

ESCAPE_CHARACTER

public static ESCAPE_CHARACTER: 16 = 16

Valor de propiedad

16

ESCAPE_CHARACTER_IN_STRUCTURE_BODY

public static ESCAPE_CHARACTER_IN_STRUCTURE_BODY: 31 = 31

Valor de propiedad

31

EXPRESSION

public static EXPRESSION: 17 = 17

Valor de propiedad

17

EXPRESSION_IN_STRUCTURE_BODY

public static EXPRESSION_IN_STRUCTURE_BODY: 32 = 32

Valor de propiedad

32

grammarFileName

string grammarFileName

Valor de propiedad

string

IF

public static IF: 10 = 10

Valor de propiedad

10

INVALID_TOKEN

public static INVALID_TOKEN: 6 = 6

Valor de propiedad

6

LEFT_SQUARE_BRACKET

public static LEFT_SQUARE_BRACKET: 5 = 5

Valor de propiedad

5

MULTILINE_PREFIX

public static MULTILINE_PREFIX: 8 = 8

Valor de propiedad

8

MULTILINE_SUFFIX

public static MULTILINE_SUFFIX: 19 = 19

Valor de propiedad

19

NEWLINE

public static NEWLINE: 2 = 2

Valor de propiedad

2

NEWLINE_IN_BODY

public static NEWLINE_IN_BODY: 9 = 9

Valor de propiedad

9

NEWLINE_IN_STRUCTURE_NAME

public static NEWLINE_IN_STRUCTURE_NAME: 21 = 21

Valor de propiedad

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",
	]

Valor de propiedad

string[]

ruleNames

string[] ruleNames

Valor de propiedad

string[]

RULE_body

public static RULE_body: 1 = 1

Valor de propiedad

1

RULE_errorStructuredName

public static RULE_errorStructuredName: 4 = 4

Valor de propiedad

4

RULE_errorStructureLine

public static RULE_errorStructureLine: 6 = 6

Valor de propiedad

6

RULE_errorTemplateString

public static RULE_errorTemplateString: 13 = 13

Valor de propiedad

13

RULE_expression

public static RULE_expression: 20 = 20

Valor de propiedad

20

RULE_expressionInStructure

public static RULE_expressionInStructure: 21 = 21

Valor de propiedad

21

RULE_ifCondition

public static RULE_ifCondition: 16 = 16

Valor de propiedad

16

RULE_ifConditionRule

public static RULE_ifConditionRule: 15 = 15

Valor de propiedad

15

RULE_ifElseTemplateBody

public static RULE_ifElseTemplateBody: 14 = 14

Valor de propiedad

14

RULE_keyValueStructureLine

public static RULE_keyValueStructureLine: 7 = 7

Valor de propiedad

7

RULE_keyValueStructureValue

public static RULE_keyValueStructureValue: 8 = 8

Valor de propiedad

8

RULE_normalTemplateBody

public static RULE_normalTemplateBody: 10 = 10

Valor de propiedad

10

RULE_normalTemplateString

public static RULE_normalTemplateString: 12 = 12

Valor de propiedad

12

RULE_structuredBodyContentLine

public static RULE_structuredBodyContentLine: 5 = 5

Valor de propiedad

5

RULE_structuredBodyEndLine

public static RULE_structuredBodyEndLine: 9 = 9

Valor de propiedad

9

RULE_structuredBodyNameLine

public static RULE_structuredBodyNameLine: 3 = 3

Valor de propiedad

3

RULE_structuredTemplateBody

public static RULE_structuredTemplateBody: 2 = 2

Valor de propiedad

2

RULE_switchCaseRule

public static RULE_switchCaseRule: 18 = 18

Valor de propiedad

18

RULE_switchCaseStat

public static RULE_switchCaseStat: 19 = 19

Valor de propiedad

19

RULE_switchCaseTemplateBody

public static RULE_switchCaseTemplateBody: 17 = 17

Valor de propiedad

17

RULE_template

public static RULE_template: 0 = 0

Valor de propiedad

0

RULE_templateString

public static RULE_templateString: 11 = 11

Valor de propiedad

11

serializedATN

string serializedATN

Valor de propiedad

string

STRUCTURED_BODY_END

public static STRUCTURED_BODY_END: 27 = 27

Valor de propiedad

27

STRUCTURED_COMMENTS

public static STRUCTURED_COMMENTS: 24 = 24

Valor de propiedad

24

STRUCTURED_NEWLINE

public static STRUCTURED_NEWLINE: 26 = 26

Valor de propiedad

26

STRUCTURE_EQUALS

public static STRUCTURE_EQUALS: 29 = 29

Valor de propiedad

29

STRUCTURE_IDENTIFIER

public static STRUCTURE_IDENTIFIER: 28 = 28

Valor de propiedad

28

STRUCTURE_NAME

public static STRUCTURE_NAME: 22 = 22

Valor de propiedad

22

STRUCTURE_OR_MARK

public static STRUCTURE_OR_MARK: 30 = 30

Valor de propiedad

30

SWITCH

public static SWITCH: 13 = 13

Valor de propiedad

13

TEXT

public static TEXT: 18 = 18

Valor de propiedad

18

TEXT_IN_STRUCTURE_BODY

public static TEXT_IN_STRUCTURE_BODY: 33 = 33

Valor de propiedad

33

TEXT_IN_STRUCTURE_NAME

public static TEXT_IN_STRUCTURE_NAME: 23 = 23

Valor de propiedad

23

VOCABULARY

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

Valor de propiedad

Vocabulary

vocabulary

Vocabulary vocabulary

Valor de propiedad

Vocabulary

WS

public static WS: 1 = 1

Valor de propiedad

1

WS_IN_BODY

public static WS_IN_BODY: 7 = 7

Valor de propiedad

7

WS_IN_STRUCTURE_BODY

public static WS_IN_STRUCTURE_BODY: 25 = 25

Valor de propiedad

25

WS_IN_STRUCTURE_NAME

public static WS_IN_STRUCTURE_NAME: 20 = 20

Valor de propiedad

20

Detalles de las propiedades heredadas

atn

Obtenga el serializedATN usado por el reconocedor para la predicción.

atn: ATN

Valor de propiedad

ATN

heredado de Recognizer.atn

buildParseTree

Realice un seguimiento de los objetos <xref:ParserRuleContext> durante el análisis y conéguelos mediante la lista de <xref:ParserRuleContext%23children> para que forma un árbol de análisis. El <xref:ParserRuleContext> devuelto desde la regla de inicio representa la raíz del árbol de análisis. Tenga en cuenta que si no estamos creando árboles de análisis, los contextos de regla solo apuntan hacia arriba. Cuando se cierra una regla, devuelve el contexto, pero que obtiene la recolección de elementos no utilizados si nadie contiene una referencia. Apunta hacia arriba, pero nadie apunta.

Al crear árboles de análisis, vamos a agregar todos estos contextos a <xref:ParserRuleContext%23children> lista. Los contextos no son candidatos para la recolección de elementos no utilizados.

buildParseTree: boolean

Valor de propiedad

boolean

Heredado de Parser.buildParseTree

context

context: ParserRuleContext

Valor de propiedad

ParserRuleContext

Heredado de Parser.context

currentToken

La coincidencia debe devolver el símbolo de entrada actual, que se coloca en la etiqueta para la referencia del token asociado; Por ejemplo, x=ID.

currentToken: Token

Valor de propiedad

Token

heredado de Parser.currentToken

EOF

static EOF: number

Valor de propiedad

number

heredado de Recognizer.EOF

errorHandler

errorHandler: ANTLRErrorStrategy

Valor de propiedad

ANTLRErrorStrategy

Heredado de Parser.errorHandler

inputStream

Establezca el flujo de token y restablezca el analizador.

inputStream: TokenStream

Valor de propiedad

TokenStream

Heredado de Parser.inputStream

interpreter

Establezca el intérprete atn usado por el reconocedor para la predicción.

interpreter: ParserATNSimulator

Valor de propiedad

ParserATNSimulator

heredado de Recognizer.interpreter

isMatchedEOF

isMatchedEOF: boolean

Valor de propiedad

boolean

Heredado de Parser.isMatchedEOF

isTrace

Durante un análisis a veces resulta útil escuchar en la entrada de regla y los eventos de salida, así como las coincidencias de token. Esto es para la depuración rápida y sucia.

isTrace: boolean

Valor de propiedad

boolean

Heredado de Parser.isTrace

numberOfSyntaxErrors

Obtiene el número de errores de sintaxis notificados durante el análisis. Este valor se incrementa cada vez que se llama a <xref:%23notifyErrorListeners>.

Consulte #notifyErrorListeners

numberOfSyntaxErrors: number

Valor de propiedad

number

Heredado de Parser.numberOfSyntaxErrors

parseInfo

parseInfo: Promise<ParseInfo | undefined>

Valor de propiedad

Promise<ParseInfo | undefined>

Heredado de Parser.parseInfo

precedence

Obtenga el nivel de precedencia de la regla de precedencia superior.

precedence: number

Valor de propiedad

number

Heredado de Parser.precedence

ruleContext

ruleContext: ParserRuleContext

Valor de propiedad

ParserRuleContext

Heredado de Parser.ruleContext

sourceName

sourceName: string

Valor de propiedad

string

Heredado de Parser.sourceName

state

Indique que el reconocedor ha cambiado el estado interno que es coherente con el estado ATN pasado. De esta manera siempre sabemos dónde estamos en el ATN a medida que avanza el analizador. Los objetos de contexto de regla forman una pila que nos permite ver la pila de invocación de reglas. Combine esto y hemos completado la información de configuración de ATN.

state: number

Valor de propiedad

number

heredado de Recognizer.state

tokenFactory

tokenFactory: TokenFactory

Valor de propiedad

TokenFactory

Heredado de Parser.tokenFactory

Detalles del método

body()

function body(): BodyContext

Devoluciones

errorStructuredName()

function errorStructuredName(): ErrorStructuredNameContext

Devoluciones

errorStructureLine()

function errorStructureLine(): ErrorStructureLineContext

Devoluciones

errorTemplateString()

function errorTemplateString(): ErrorTemplateStringContext

Devoluciones

expression()

function expression(): ExpressionContext

Devoluciones

expressionInStructure()

function expressionInStructure(): ExpressionInStructureContext

Devoluciones

ifCondition()

function ifCondition(): IfConditionContext

Devoluciones

ifConditionRule()

function ifConditionRule(): IfConditionRuleContext

Devoluciones

ifElseTemplateBody()

function ifElseTemplateBody(): IfElseTemplateBodyContext

Devoluciones

keyValueStructureLine()

function keyValueStructureLine(): KeyValueStructureLineContext

Devoluciones

keyValueStructureValue()

function keyValueStructureValue(): KeyValueStructureValueContext

Devoluciones

normalTemplateBody()

function normalTemplateBody(): NormalTemplateBodyContext

Devoluciones

normalTemplateString()

function normalTemplateString(): NormalTemplateStringContext

Devoluciones

structuredBodyContentLine()

function structuredBodyContentLine(): StructuredBodyContentLineContext

Devoluciones

structuredBodyEndLine()

function structuredBodyEndLine(): StructuredBodyEndLineContext

Devoluciones

structuredBodyNameLine()

function structuredBodyNameLine(): StructuredBodyNameLineContext

Devoluciones

structuredTemplateBody()

function structuredTemplateBody(): StructuredTemplateBodyContext

Devoluciones

switchCaseRule()

function switchCaseRule(): SwitchCaseRuleContext

Devoluciones

switchCaseStat()

function switchCaseStat(): SwitchCaseStatContext

Devoluciones

switchCaseTemplateBody()

function switchCaseTemplateBody(): SwitchCaseTemplateBodyContext

Devoluciones

template()

function template(): TemplateContext

Devoluciones

templateString()

function templateString(): TemplateStringContext

Devoluciones

Detalles de los métodos heredados

action(RuleContext | undefined, number, number)

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

Parámetros

_localctx

RuleContext | undefined

ruleIndex

number

actionIndex

number

Heredado de Recognizer.action

addErrorListener(ANTLRErrorListener<Token>)

function addErrorListener(listener: ANTLRErrorListener<Token>)

Parámetros

listener

ANTLRErrorListener<Token>

Heredado de Recognizer.addErrorListener

addParseListener(ParseTreeListener)

Registra listener para recibir eventos durante el proceso de análisis. Para admitir transformaciones gramaticales que conservan los resultados (incluidas, entre otras, la eliminación de recursividad izquierda, el factoring izquierdo automatizado y la generación de código optimizada), las llamadas a métodos de escucha durante el análisis pueden diferir sustancialmente de las llamadas realizadas por <xref:ParseTreeWalker%23DEFAULT> usadas una vez completado el análisis. En concreto, los eventos de entrada y salida de reglas pueden producirse en un orden diferente durante el análisis que después del analizador. Además, se pueden omitir llamadas a determinados métodos de entrada de regla.

Con las siguientes excepciones específicas, las llamadas a eventos de escucha se deterministas, es decir, para una entrada idéntica, las llamadas a los métodos de escucha serán las mismas.

  • Las modificaciones en la gramática usada para generar código pueden cambiar el comportamiento de las llamadas del agente de escucha.
  • Las modificaciones en las opciones de la línea de comandos pasadas a ANTLR 4 al generar el analizador pueden cambiar el comportamiento de las llamadas del agente de escucha.
  • Cambiar la versión de la herramienta ANTLR usada para generar el analizador puede cambiar el comportamiento de las llamadas del agente de escucha.
function addParseListener(listener: ParseTreeListener)

Parámetros

listener

ParseTreeListener

el agente de escucha que se va a agregar

Heredado de Parser.addParseListener

compileParseTreePattern(string, number)

Método preferido para obtener un patrón de árbol. Por ejemplo, este es un ejemplo de uso:

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>

Parámetros

pattern

string

patternRuleIndex

number

Devoluciones

Promise<ParseTreePattern>

Heredado de Parser.compileParseTreePattern

compileParseTreePattern(string, number, Lexer)

Igual que [int)](xref:%23compileParseTreePattern(String%2C) pero especifique un LGFileLexer en lugar de intentar deducirlo de este analizador.

function compileParseTreePattern(pattern: string, patternRuleIndex: number, lexer?: Lexer): Promise<ParseTreePattern>

Parámetros

pattern

string

patternRuleIndex

number

lexer

Lexer

Devoluciones

Promise<ParseTreePattern>

Heredado de Parser.compileParseTreePattern

consume()

Consuma y devuelva el símbolo actual. Por ejemplo, dada la siguiente entrada con A siendo el símbolo de lookahead actual, esta función mueve el cursor a B y devuelve A.

A B
^

Si el analizador no está en modo de recuperación de errores, el símbolo consumido se agrega al árbol de análisis mediante <xref:ParserRuleContext%23addChild(TerminalNode)>y se llama a <xref:ParseTreeListener%23visitTerminal> en los agentes de escucha de análisis. Si el analizador está en modo de recuperación de errores, se agrega el símbolo consumido al árbol de análisis mediante [Token)](xref:%23createErrorNode(ParserRuleContext%2C), se llama a <xref:ParserRuleContext%23addErrorNode(ErrorNode)> y <xref:ParseTreeListener%23visitErrorNode> en cualquier agente de escucha de análisis.

function consume(): Token

Devoluciones

Token

Heredado de Parser.consum

createErrorNode(ParserRuleContext, Token)

Cómo crear un nodo de error, dado un token, asociado a un elemento primario. Normalmente, el nodo de error que se va a crear no es una función del elemento primario.

function createErrorNode(parent: ParserRuleContext, t: Token): ErrorNode

Parámetros

parent

ParserRuleContext

t

Token

Devoluciones

ErrorNode

Heredado de Parser.createErrorNode

createTerminalNode(ParserRuleContext, Token)

Cómo crear un nodo hoja de token asociado a un elemento primario. Normalmente, el nodo de terminal que se va a crear no es una función del elemento primario.

function createTerminalNode(parent: ParserRuleContext, t: Token): TerminalNode

Parámetros

parent

ParserRuleContext

t

Token

Devoluciones

TerminalNode

Heredado de Parser.createTerminalNode

dumpDFA()

Para la depuración y otros fines.

function dumpDFA()

heredado de Parser.dumpDFA

enterLeftFactoredRule(ParserRuleContext, number, number)

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

Parámetros

localctx

ParserRuleContext

state

number

ruleIndex

number

Heredado de Parser.enterLeftFactoredRule

enterOuterAlt(ParserRuleContext, number)

function enterOuterAlt(localctx: ParserRuleContext, altNum: number)

Parámetros

localctx

ParserRuleContext

altNum

number

Heredado de Parser.enterOuterAlt

enterRecursionRule(ParserRuleContext, number, number, number)

function enterRecursionRule(localctx: ParserRuleContext, state: number, ruleIndex: number, precedence: number)

Parámetros

localctx

ParserRuleContext

state

number

ruleIndex

number

precedence

number

Heredado de Parser.enterRecursionRule

enterRule(ParserRuleContext, number, number)

Siempre se llama a los analizadores generados tras la entrada a una regla. Campo de acceso <xref:%23_ctx> obtener el contexto actual.

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

Parámetros

localctx

ParserRuleContext

state

number

ruleIndex

number

Heredado de Parser.enterRule

exitRule()

function exitRule()

Heredado de Parser.exitRule

getATNWithBypassAlts()

El ATN con alternativas de omisión es costoso de crear, por lo que lo creamos diferir. @ si el analizador actual no implementa la propiedad serializedATN.

function getATNWithBypassAlts(): ATN

Devoluciones

ATN

Heredado de Parser.getATNWithBypassAlts

getDFAStrings()

Para la depuración y otros fines.

function getDFAStrings(): string[]

Devoluciones

string[]

Heredado de Parser.getDFAStrings

getErrorHeader(RecognitionException)

¿Cuál es el encabezado de error, normalmente información de posición de línea/carácter?

function getErrorHeader(e: RecognitionException): string

Parámetros

e

RecognitionException

Devoluciones

string

Heredado de Recognizer.getErrorHeader

getErrorListenerDispatch()

function getErrorListenerDispatch(): ParserErrorListener

Devoluciones

ParserErrorListener

Heredado de Parser.getErrorListenerDispatch

getErrorListeners()

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

Devoluciones

Array<ANTLRErrorListener<Token>>

Heredado de Recognizer.getErrorListeners

getExpectedTokens()

Calcula el conjunto de símbolos de entrada que podrían seguir el estado y el contexto actuales del analizador, tal como se indica en <xref:%23getState> y <xref:%23getContext>, respectivamente.

Consulte ATN#getExpectedTokens(int, RuleContext)

function getExpectedTokens(): IntervalSet

Devoluciones

IntervalSet

Heredado de Parser.getExpectedTokens

getExpectedTokensWithinCurrentRule()

function getExpectedTokensWithinCurrentRule(): IntervalSet

Devoluciones

IntervalSet

Se hereda de Parser.getExpectedTokensWithinCurrentRule

getInvokingContext(number)

function getInvokingContext(ruleIndex: number): ParserRuleContext | undefined

Parámetros

ruleIndex

number

Devoluciones

ParserRuleContext | undefined

Heredado de Parser.getInvokingContext

getParseListeners()

function getParseListeners(): ParseTreeListener[]

Devoluciones

ParseTreeListener[]

Heredado de Parser.getParseListeners

getRuleIndex(string)

Obtiene el índice de una regla (es decir, RULE_ruleName campo) o -1 si no se encuentra.

function getRuleIndex(ruleName: string): number

Parámetros

ruleName

string

Devoluciones

number

Heredado de Parser.getRuleIndex

getRuleIndexMap()

Obtenga una asignación de nombres de regla a índices de reglas. Se usa para la compilación de patrones de árbol y XPath.

function getRuleIndexMap(): ReadonlyMap<string, number>

Devoluciones

ReadonlyMap<string, number>

Heredado de Recognizer.getRuleIndexMap

getRuleInvocationStack(RuleContext)

Devuelve list<string> de los nombres de regla de la instancia del analizador que conduce a una llamada a la regla actual. Puede invalidar si desea más detalles, como la información de archivo o línea de dónde se invoca una regla en el ATN. Esto es muy útil para los mensajes de error.

function getRuleInvocationStack(ctx?: RuleContext): string[]

Parámetros

ctx

RuleContext

Devoluciones

string[]

Heredado de Parser.getRuleInvocationStack

getTokenType(string)

function getTokenType(tokenName: string): number

Parámetros

tokenName

string

Devoluciones

number

Heredado de Recognizer.getTokenType

getTokenTypeMap()

Obtenga una asignación de nombres de token a tipos de token. Se usa para la compilación de patrones de árbol y XPath.

function getTokenTypeMap(): ReadonlyMap<string, number>

Devoluciones

ReadonlyMap<string, number>

Inherited From Recognizer.getTokenTypeMap

inContext(string)

function inContext(context: string): boolean

Parámetros

context

string

Devoluciones

boolean

Heredado de Parser.inContext

isExpectedToken(number)

Comprueba si symbol puede seguir el estado actual en el ATN. El comportamiento de este método es equivalente a lo siguiente, pero se implementa de forma que no es necesario construir explícitamente el conjunto de seguimiento contextual completo.

return getExpectedTokens().contains(symbol);
function isExpectedToken(symbol: number): boolean

Parámetros

symbol

number

tipo de símbolo que se va a comprobar

Devoluciones

boolean

true si symbol puede seguir el estado actual en el ATN; de lo contrario, false.

Heredado de Parser.isExpectedToken

match(number)

Coincide con el símbolo de entrada actual con ttype. Si el tipo de símbolo coincide, se llama a <xref:ANTLRErrorStrategy%23reportMatch> y <xref:%23consume> para completar el proceso de coincidencia. Si el tipo de símbolo no coincide, se llama a <xref:ANTLRErrorStrategy%23recoverInline> en la estrategia de error actual para intentar la recuperación. Si <xref:%23getBuildParseTree> es true y el índice de token del símbolo devuelto por <xref:ANTLRErrorStrategy%23recoverInline> es -1, el símbolo se agrega al árbol de análisis llamando a [Token)](xref:%23createErrorNode(ParserRuleContext%2C), <xref:ParserRuleContext%23addErrorNode(ErrorNode)>.

function match(ttype: number): Token

Parámetros

ttype

number

el tipo de token que se va a coincidir

Devoluciones

Token

el símbolo coincidente @ si el símbolo de entrada actual no coincide con ttype y la estrategia de error no se pudo recuperar del símbolo no coincidente

Heredado de Parser.match

matchWildcard()

Coincide con el símbolo de entrada actual como un carácter comodín. Si el tipo de símbolo coincide (es decir, tiene un valor mayor que 0), se llama a <xref:ANTLRErrorStrategy%23reportMatch> y <xref:%23consume> para completar el proceso de coincidencia. Si el tipo de símbolo no coincide, se llama a <xref:ANTLRErrorStrategy%23recoverInline> en la estrategia de error actual para intentar la recuperación. Si <xref:%23getBuildParseTree> es true y el índice de token del símbolo devuelto por <xref:ANTLRErrorStrategy%23recoverInline> es -1, el símbolo se agrega al árbol de análisis llamando a [Token)](xref:Parser%23createErrorNode(ParserRuleContext%2C), <xref:ParserRuleContext%23addErrorNode(ErrorNode)>.

function matchWildcard(): Token

Devoluciones

Token

el símbolo coincidente @ si el símbolo de entrada actual no coincide con un carácter comodín y la estrategia de error no se pudo recuperar del símbolo no coincidente

Heredado de Parser.matchWildcard

notifyErrorListeners(string)

function notifyErrorListeners(msg: string)

Parámetros

msg

string

Heredado de Parser.notifyErrorListeners

notifyErrorListeners(string, Token | null, RecognitionException | undefined)

function notifyErrorListeners(msg: string, offendingToken: Token | null, e: RecognitionException | undefined)

Parámetros

msg

string

offendingToken

Token | null

e

RecognitionException | undefined

Heredado de Parser.notifyErrorListeners

precpred(RuleContext, number)

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

Parámetros

localctx

RuleContext

precedence

number

Devoluciones

boolean

Heredado de Parser.precpred

pushNewRecursionContext(ParserRuleContext, number, number)

Al igual que <xref:%23enterRule> pero para reglas recursivas. Convierta el contexto actual en el elemento secundario del localctx entrante.

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

Parámetros

localctx

ParserRuleContext

state

number

ruleIndex

number

Heredado de Parser.pushNewRecursionContext

removeErrorListener(ANTLRErrorListener<Token>)

function removeErrorListener(listener: ANTLRErrorListener<Token>)

Parámetros

listener

ANTLRErrorListener<Token>

Heredado de Recognizer.removeErrorListener

removeErrorListeners()

function removeErrorListeners()

Heredado de Recognizer.removeErrorListeners

removeParseListener(ParseTreeListener)

Quite listener de la lista de agentes de escucha de análisis. Si listener se undefined o no se ha agregado como agente de escucha de análisis, este método no hace nada.

Consulte #addParseListener

function removeParseListener(listener: ParseTreeListener)

Parámetros

listener

ParseTreeListener

el agente de escucha que se va a quitar

Heredado de Parser.removeParseListener

removeParseListeners()

Quite todos los agentes de escucha de análisis.

Consulte #addParseListener

function removeParseListeners()

Heredado de Parser.removeParseListeners

reset()

restablecer el estado del analizador

function reset()

Heredado de Parser.reset

reset(boolean)

function reset(resetInput: boolean)

Parámetros

resetInput

boolean

Heredado de Parser.reset

sempred(RuleContext | undefined, number, number)

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

Parámetros

_localctx

RuleContext | undefined

ruleIndex

number

actionIndex

number

Devoluciones

boolean

heredado de Recognizer.sempred

setProfile(boolean)

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

Parámetros

profile

boolean

Devoluciones

Promise<void>

Heredado de Parser.setProfile

unrollRecursionContexts(ParserRuleContext)

function unrollRecursionContexts(_parentctx: ParserRuleContext)

Parámetros

_parentctx

ParserRuleContext

Heredado de Parser.unrollRecursionContexts