Condividi tramite


Analyzer class

Motore analizzatore. Per ottenere i risultati dell'analizzatore statico.

Extends

AbstractParseTreeVisitor<AnalyzerResult>

Costruttori

Analyzer(Templates, EvaluationOptions, AnalyzerOptions)

Crea una nuova istanza della classe analyzer .

Proprietà

templates

Modelli.

Metodi

analyzeTemplate(string)

Analizzare un modello per ottenere i risultati dell'analizzatore statico.

visitIfElseBody(IfElseBodyContext)

Visitare un albero di analisi prodotto dall'alternativa ifElseBody etichettata in LGTemplateParser.body.

visitNormalBody(NormalBodyContext)

Visitare un albero di analisi prodotto dall'alternativa normalBody etichettata in LGTemplateParser.body.

visitNormalTemplateBody(NormalTemplateBodyContext)

Visitare un albero di analisi prodotto da LGTemplateParser.normalTemplateBody.

visitNormalTemplateString(NormalTemplateStringContext)

Visitare un albero di analisi prodotto da LGTemplateParser.normalTemplateString.

visitStructuredTemplateBody(StructuredTemplateBodyContext)

Visitare un albero di analisi prodotto da LGTemplateParser.structuredTemplateBody.

visitStructureValue(KeyValueStructureLineContext)

Visitare un albero di analisi prodotto da LGTemplateParser.structuredValue.

visitSwitchCaseBody(SwitchCaseBodyContext)

Visitare un albero di analisi prodotto dall'alternativa switchCaseBody etichettata in LGTemplateParser.body.

Metodi ereditati

visit(ParseTree)

{@inheritDoc} L'implementazione predefinita chiama <xref:ParseTree%23accept> sull'albero specificato.

visitChildren(RuleNode)

{@inheritDoc} L'implementazione predefinita inizializza il risultato aggregato per defaultResult(). Prima di visitare ogni figlio, chiama shouldVisitNextChild; se il risultato è false non vengono visitati più elementi figlio e viene restituito il risultato aggregato corrente. Dopo aver visitato un elemento figlio, il risultato dell'aggregazione viene aggiornato chiamando aggregateResult con il risultato aggregato precedente e il risultato della visita dell'elemento figlio.

L'implementazione predefinita non è sicura per l'uso nei visitatori che modificano la struttura ad albero. I visitatori che modificano l'albero devono eseguire l'override di questo metodo per comportarsi correttamente rispetto all'algoritmo specifico in uso.

visitErrorNode(ErrorNode)

{@inheritDoc} L'implementazione predefinita restituisce il risultato di defaultResult.

visitTerminal(TerminalNode)

{@inheritDoc} L'implementazione predefinita restituisce il risultato di defaultResult.

Dettagli costruttore

Analyzer(Templates, EvaluationOptions, AnalyzerOptions)

Crea una nuova istanza della classe analyzer .

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

Parametri

templates
Templates

Modelli.

opt
EvaluationOptions

Opzioni per LG.

analyzerOptions
AnalyzerOptions

Opzioni per l'analizzatore.

Dettagli proprietà

templates

Modelli.

templates: Templates

Valore della proprietà

Dettagli metodo

analyzeTemplate(string)

Analizzare un modello per ottenere i risultati dell'analizzatore statico.

function analyzeTemplate(templateName: string): AnalyzerResult

Parametri

templateName

string

Nome modello.

Restituisce

Analizzare i risultati, incluse le variabili e i riferimenti al modello.

visitIfElseBody(IfElseBodyContext)

Visitare un albero di analisi prodotto dall'alternativa ifElseBody etichettata in LGTemplateParser.body.

function visitIfElseBody(ctx: IfElseBodyContext): AnalyzerResult

Parametri

ctx
IfElseBodyContext

Albero di analisi.

Restituisce

Istanza di AnalyzerResult .

visitNormalBody(NormalBodyContext)

Visitare un albero di analisi prodotto dall'alternativa normalBody etichettata in LGTemplateParser.body.

function visitNormalBody(ctx: NormalBodyContext): AnalyzerResult

Parametri

ctx
NormalBodyContext

Albero di analisi.

Restituisce

Istanza di AnalyzerResult .

visitNormalTemplateBody(NormalTemplateBodyContext)

Visitare un albero di analisi prodotto da LGTemplateParser.normalTemplateBody.

function visitNormalTemplateBody(ctx: NormalTemplateBodyContext): AnalyzerResult

Parametri

ctx
NormalTemplateBodyContext

Albero di analisi.

Restituisce

Istanza di AnalyzerResult .

visitNormalTemplateString(NormalTemplateStringContext)

Visitare un albero di analisi prodotto da LGTemplateParser.normalTemplateString.

function visitNormalTemplateString(ctx: NormalTemplateStringContext): AnalyzerResult

Parametri

ctx
NormalTemplateStringContext

Albero di analisi.

Restituisce

Istanza di AnalyzerResult .

visitStructuredTemplateBody(StructuredTemplateBodyContext)

Visitare un albero di analisi prodotto da LGTemplateParser.structuredTemplateBody.

function visitStructuredTemplateBody(ctx: StructuredTemplateBodyContext): AnalyzerResult

Parametri

ctx
StructuredTemplateBodyContext

Albero di analisi.

Restituisce

Istanza di AnalyzerResult .

visitStructureValue(KeyValueStructureLineContext)

Visitare un albero di analisi prodotto da LGTemplateParser.structuredValue.

function visitStructureValue(ctx: KeyValueStructureLineContext): AnalyzerResult

Parametri

ctx
KeyValueStructureLineContext

Albero di analisi.

Restituisce

Istanza di AnalyzerResult .

visitSwitchCaseBody(SwitchCaseBodyContext)

Visitare un albero di analisi prodotto dall'alternativa switchCaseBody etichettata in LGTemplateParser.body.

function visitSwitchCaseBody(ctx: SwitchCaseBodyContext): AnalyzerResult

Parametri

ctx
SwitchCaseBodyContext

Albero di analisi.

Restituisce

Istanza di AnalyzerResult .

Dettagli dei metodi ereditati

visit(ParseTree)

{@inheritDoc} L'implementazione predefinita chiama <xref:ParseTree%23accept> sull'albero specificato.

function visit(tree: ParseTree): AnalyzerResult

Parametri

tree

ParseTree

Restituisce

Ereditato da AbstractParseTreeVisitor.visit

visitChildren(RuleNode)

{@inheritDoc} L'implementazione predefinita inizializza il risultato aggregato per defaultResult(). Prima di visitare ogni figlio, chiama shouldVisitNextChild; se il risultato è false non vengono visitati più elementi figlio e viene restituito il risultato aggregato corrente. Dopo aver visitato un elemento figlio, il risultato dell'aggregazione viene aggiornato chiamando aggregateResult con il risultato aggregato precedente e il risultato della visita dell'elemento figlio.

L'implementazione predefinita non è sicura per l'uso nei visitatori che modificano la struttura ad albero. I visitatori che modificano l'albero devono eseguire l'override di questo metodo per comportarsi correttamente rispetto all'algoritmo specifico in uso.

function visitChildren(node: RuleNode): AnalyzerResult

Parametri

node

RuleNode

Restituisce

Ereditato da AbstractParseTreeVisitor.visitChildren

visitErrorNode(ErrorNode)

{@inheritDoc} L'implementazione predefinita restituisce il risultato di defaultResult.

function visitErrorNode(node: ErrorNode): AnalyzerResult

Parametri

node

ErrorNode

Restituisce

Ereditato da AbstractParseTreeVisitor.visitErrorNode

visitTerminal(TerminalNode)

{@inheritDoc} L'implementazione predefinita restituisce il risultato di defaultResult.

function visitTerminal(node: TerminalNode): AnalyzerResult

Parametri

node

TerminalNode

Restituisce

ereditato da AbstractParseTreeVisitor.visitTerminal