Compartir a través de


Analyzer class

Motor del analizador. Para obtener los resultados del analizador estático.

Extends

AbstractParseTreeVisitor<AnalyzerResult>

Constructores

Analyzer(Templates, EvaluationOptions, AnalyzerOptions)

Crea una nueva instancia de la clase Analyzer.

Propiedades

templates

Plantillas.

Métodos

analyzeTemplate(string)

Analice una plantilla para obtener los resultados del analizador estático.

visitIfElseBody(IfElseBodyContext)

Visite un árbol de análisis producido por la alternativa ifElseBody etiquetada en LGTemplateParser.body.

visitNormalBody(NormalBodyContext)

Visite un árbol de análisis producido por la alternativa normalBody etiquetada en LGTemplateParser.body.

visitNormalTemplateBody(NormalTemplateBodyContext)

Visite un árbol de análisis producido por LGTemplateParser.normalTemplateBody.

visitNormalTemplateString(NormalTemplateStringContext)

Visite un árbol de análisis producido por LGTemplateParser.normalTemplateString.

visitStructuredTemplateBody(StructuredTemplateBodyContext)

Visite un árbol de análisis producido por LGTemplateParser.structuredTemplateBody.

visitStructureValue(KeyValueStructureLineContext)

Visite un árbol de análisis producido por LGTemplateParser.structuredValue.

visitSwitchCaseBody(SwitchCaseBodyContext)

Visite un árbol de análisis producido por la alternativa switchCaseBody etiquetada en LGTemplateParser.body.

Métodos heredados

visit(ParseTree)

{@inheritDoc} La implementación predeterminada llama a <xref:ParseTree%23accept> en el árbol especificado.

visitChildren(RuleNode)

{@inheritDoc} La implementación predeterminada inicializa el resultado agregado en defaultResult(). Antes de visitar a cada niño, llama a shouldVisitNextChild; si el resultado es false no se visitan más elementos secundarios y se devuelve el resultado agregado actual. Después de visitar un elemento secundario, el resultado agregado se actualiza llamando a aggregateResult con el resultado agregado anterior y el resultado de visitar el elemento secundario.

La implementación predeterminada no es segura para su uso en los visitantes que modifican la estructura del árbol. Los visitantes que modifican el árbol deben invalidar este método para que se comporten correctamente con respecto al algoritmo específico en uso.

visitErrorNode(ErrorNode)

{@inheritDoc} La implementación predeterminada devuelve el resultado de defaultResult.

visitTerminal(TerminalNode)

{@inheritDoc} La implementación predeterminada devuelve el resultado de defaultResult.

Detalles del constructor

Analyzer(Templates, EvaluationOptions, AnalyzerOptions)

Crea una nueva instancia de la clase Analyzer.

new Analyzer(templates: Templates, opt?: EvaluationOptions, analyzerOptions?: AnalyzerOptions)

Parámetros

templates
Templates

Plantillas.

opt
EvaluationOptions

Opciones para LG.

analyzerOptions
AnalyzerOptions

Opciones del analizador.

Detalles de las propiedades

templates

Plantillas.

templates: Templates

Valor de propiedad

Detalles del método

analyzeTemplate(string)

Analice una plantilla para obtener los resultados del analizador estático.

function analyzeTemplate(templateName: string): AnalyzerResult

Parámetros

templateName

string

Nombre de plantilla.

Devoluciones

Analice el resultado, incluidas las variables y las referencias de plantilla.

visitIfElseBody(IfElseBodyContext)

Visite un árbol de análisis producido por la alternativa ifElseBody etiquetada en LGTemplateParser.body.

function visitIfElseBody(ctx: IfElseBodyContext): AnalyzerResult

Parámetros

ctx
IfElseBodyContext

Árbol de análisis.

Devoluciones

Instancia de AnalyzerResult.

visitNormalBody(NormalBodyContext)

Visite un árbol de análisis producido por la alternativa normalBody etiquetada en LGTemplateParser.body.

function visitNormalBody(ctx: NormalBodyContext): AnalyzerResult

Parámetros

ctx
NormalBodyContext

Árbol de análisis.

Devoluciones

Instancia de AnalyzerResult.

visitNormalTemplateBody(NormalTemplateBodyContext)

Visite un árbol de análisis producido por LGTemplateParser.normalTemplateBody.

function visitNormalTemplateBody(ctx: NormalTemplateBodyContext): AnalyzerResult

Parámetros

ctx
NormalTemplateBodyContext

Árbol de análisis.

Devoluciones

Instancia de AnalyzerResult.

visitNormalTemplateString(NormalTemplateStringContext)

Visite un árbol de análisis producido por LGTemplateParser.normalTemplateString.

function visitNormalTemplateString(ctx: NormalTemplateStringContext): AnalyzerResult

Parámetros

ctx
NormalTemplateStringContext

Árbol de análisis.

Devoluciones

Instancia de AnalyzerResult.

visitStructuredTemplateBody(StructuredTemplateBodyContext)

Visite un árbol de análisis producido por LGTemplateParser.structuredTemplateBody.

function visitStructuredTemplateBody(ctx: StructuredTemplateBodyContext): AnalyzerResult

Parámetros

ctx
StructuredTemplateBodyContext

Árbol de análisis.

Devoluciones

Instancia de AnalyzerResult.

visitStructureValue(KeyValueStructureLineContext)

Visite un árbol de análisis producido por LGTemplateParser.structuredValue.

function visitStructureValue(ctx: KeyValueStructureLineContext): AnalyzerResult

Parámetros

ctx
KeyValueStructureLineContext

Árbol de análisis.

Devoluciones

Instancia de AnalyzerResult.

visitSwitchCaseBody(SwitchCaseBodyContext)

Visite un árbol de análisis producido por la alternativa switchCaseBody etiquetada en LGTemplateParser.body.

function visitSwitchCaseBody(ctx: SwitchCaseBodyContext): AnalyzerResult

Parámetros

ctx
SwitchCaseBodyContext

Árbol de análisis.

Devoluciones

Instancia de AnalyzerResult.

Detalles de los métodos heredados

visit(ParseTree)

{@inheritDoc} La implementación predeterminada llama a <xref:ParseTree%23accept> en el árbol especificado.

function visit(tree: ParseTree): AnalyzerResult

Parámetros

tree

ParseTree

Devoluciones

heredado de AbstractParseTreeVisitor.visit

visitChildren(RuleNode)

{@inheritDoc} La implementación predeterminada inicializa el resultado agregado en defaultResult(). Antes de visitar a cada niño, llama a shouldVisitNextChild; si el resultado es false no se visitan más elementos secundarios y se devuelve el resultado agregado actual. Después de visitar un elemento secundario, el resultado agregado se actualiza llamando a aggregateResult con el resultado agregado anterior y el resultado de visitar el elemento secundario.

La implementación predeterminada no es segura para su uso en los visitantes que modifican la estructura del árbol. Los visitantes que modifican el árbol deben invalidar este método para que se comporten correctamente con respecto al algoritmo específico en uso.

function visitChildren(node: RuleNode): AnalyzerResult

Parámetros

node

RuleNode

Devoluciones

Heredado de AbstractParseTreeVisitor.visitChildren

visitErrorNode(ErrorNode)

{@inheritDoc} La implementación predeterminada devuelve el resultado de defaultResult.

function visitErrorNode(node: ErrorNode): AnalyzerResult

Parámetros

node

ErrorNode

Devoluciones

heredado de AbstractParseTreeVisitor.visitErrorNode

visitTerminal(TerminalNode)

{@inheritDoc} La implementación predeterminada devuelve el resultado de defaultResult.

function visitTerminal(node: TerminalNode): AnalyzerResult

Parámetros

node

TerminalNode

Devoluciones

heredado de AbstractParseTreeVisitor.visitTerminal