Evaluator class
Motore di runtime di valutazione
- Extends
-
AbstractParseTreeVisitor<unknown>
Costruttori
Evaluator(Templates, Evaluation |
Crea una nuova istanza della classe analizzatore di |
Proprietà
activity |
|
expand |
|
expression |
Parser di espressioni. |
from |
|
is |
|
LGType | |
Re |
|
template |
|
template |
TemplateMap. |
templates | Modelli. |
Metodi
check |
Controlla il risultato di un'espressione e genera l'errore corrispondente. |
concat |
Concatena due messaggi di errore. |
construct |
Costruisce l'ambito per il mapping dei valori degli argomenti ai parametri del modello. Genera errori se alcuni errori sono stati rilevati TemplateErrors. |
evaluate |
Valutare un modello con il nome e l'ambito specificati. |
visit |
Visitare un albero di analisi prodotto dall'alternativa ifElseBody etichettata in LGTemplateParser.body. |
visit |
Visitare un albero di analisi prodotto dall'alternativa normalBody etichettata in LGTemplateParser.body. |
visit |
Visitare un albero di analisi prodotto da LGTemplateParser.normalTemplateBody. |
visit |
Visitare un albero di analisi prodotto da LGTemplateParser.normalTemplateString. |
visit |
Visitare un albero di analisi prodotto da LGTemplateParser.structuredTemplateBody. |
visit |
Visitare un albero di analisi prodotto dall'alternativa switchCaseBody etichettata in LGTemplateParser.body. |
wrapped |
Sostituisce un'espressione contenuta nel testo. |
Metodi ereditati
visit(Parse |
{@inheritDoc} L'implementazione predefinita chiama <xref:ParseTree%23accept> sull'albero specificato. |
visit |
{@inheritDoc} L'implementazione predefinita inizializza il risultato aggregato per defaultResult(). Prima di visitare ogni figlio, chiama shouldVisitNextChild; se il risultato è 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. |
visit |
{@inheritDoc} L'implementazione predefinita restituisce il risultato di defaultResult. |
visit |
{@inheritDoc} L'implementazione predefinita restituisce il risultato di defaultResult. |
Dettagli costruttore
Evaluator(Templates, EvaluationOptions)
Crea una nuova istanza della classe analizzatore di
new Evaluator(templates: Templates, opt?: EvaluationOptions)
Parametri
- templates
- Templates
Modelli.
Opzioni per LG.
Dettagli proprietà
activityAttachmentFunctionName
static activityAttachmentFunctionName: "ActivityAttachment" = "ActivityAttachment"
Valore della proprietà
"ActivityAttachment"
expandTextFunctionName
static expandTextFunctionName: "expandText" = "expandText"
Valore della proprietà
"expandText"
expressionParser
Parser di espressioni.
expressionParser: ExpressionParser
Valore della proprietà
ExpressionParser
fromFileFunctionName
static fromFileFunctionName: "fromFile" = "fromFile"
Valore della proprietà
"fromFile"
isTemplateFunctionName
static isTemplateFunctionName: "isTemplate" = "isTemplate"
Valore della proprietà
"isTemplate"
LGType
static LGType: "lgType" = "lgType"
Valore della proprietà
"lgType"
ReExecuteSuffix
static ReExecuteSuffix: "!" = "!"
Valore della proprietà
"!"
templateFunctionName
static templateFunctionName: "template" = "template"
Valore della proprietà
"template"
templateMap
templates
Dettagli metodo
checkExpressionResult(string, string, unknown, string, string, string)
Controlla il risultato di un'espressione e genera l'errore corrispondente.
static function checkExpressionResult(exp: string, error: string, result: unknown, templateName: string, inlineContent: string, errorPrefix: string)
Parametri
- exp
-
string
Testo dell'espressione.
- error
-
string
Messaggio di errore.
- result
-
unknown
Risultato.
- templateName
-
string
Nome modello.
- inlineContent
-
string
Opzionale. Contenuto in linea.
- errorPrefix
-
string
Opzionale. Prefisso di errore.
concatErrorMsg(string, string)
Concatena due messaggi di errore.
static function concatErrorMsg(firstError: string, secondError: string): string
Parametri
- firstError
-
string
Primo messaggio di errore da concatenare.
- secondError
-
string
Secondo messaggio di errore da concatenare.
Restituisce
string
Messaggi di errore concatenati.
constructScope(string, unknown[], Template[])
Costruisce l'ambito per il mapping dei valori degli argomenti ai parametri del modello. Genera errori se alcuni errori sono stati rilevati TemplateErrors.
function constructScope(inputTemplateName: string, args: unknown[], allTemplates: Template[]): MemoryInterface
Parametri
- inputTemplateName
-
string
Nome del modello da valutare.
- args
-
unknown[]
Argomenti di cui eseguire il mapping ai parametri del modello.
- allTemplates
-
Template[]
Tutti i modelli.
Restituisce
MemoryInterface
L'ambito corrente se il numero di argomenti è 0; in caso contrario, restituisce un CustomizedMemory con il mapping del nome del parametro al valore dell'argomento aggiunto all'ambito.
evaluateTemplate(string, unknown)
Valutare un modello con il nome e l'ambito specificati.
function evaluateTemplate(inputTemplateName: string, scope: unknown): unknown
Parametri
- inputTemplateName
-
string
Nome modello.
- scope
-
unknown
Portata.
Restituisce
unknown
Valutare il risultato.
visitIfElseBody(IfElseBodyContext)
Visitare un albero di analisi prodotto dall'alternativa ifElseBody etichettata in LGTemplateParser.body.
function visitIfElseBody(ctx: IfElseBodyContext): unknown
Parametri
Albero di analisi.
Restituisce
unknown
Risultato del visitatore.
visitNormalBody(NormalBodyContext)
Visitare un albero di analisi prodotto dall'alternativa normalBody etichettata in LGTemplateParser.body.
function visitNormalBody(ctx: NormalBodyContext): unknown
Parametri
Albero di analisi.
Restituisce
unknown
Risultato della visita al corpo normale.
visitNormalTemplateBody(NormalTemplateBodyContext)
Visitare un albero di analisi prodotto da LGTemplateParser.normalTemplateBody.
function visitNormalTemplateBody(ctx: NormalTemplateBodyContext): unknown
Parametri
Albero di analisi.
Restituisce
unknown
Risultato della visita al corpo del modello normale.
visitNormalTemplateString(NormalTemplateStringContext)
Visitare un albero di analisi prodotto da LGTemplateParser.normalTemplateString.
function visitNormalTemplateString(ctx: NormalTemplateStringContext): unknown
Parametri
Albero di analisi.
Restituisce
unknown
Risultato della stringa di visita della stringa di modello normale.
visitStructuredTemplateBody(StructuredTemplateBodyContext)
Visitare un albero di analisi prodotto da LGTemplateParser.structuredTemplateBody.
function visitStructuredTemplateBody(ctx: StructuredTemplateBodyContext): unknown
Parametri
Albero di analisi.
Restituisce
unknown
Risultato della visita al corpo del modello strutturato.
visitSwitchCaseBody(SwitchCaseBodyContext)
Visitare un albero di analisi prodotto dall'alternativa switchCaseBody etichettata in LGTemplateParser.body.
function visitSwitchCaseBody(ctx: SwitchCaseBodyContext): unknown
Parametri
Albero di analisi.
Restituisce
unknown
Risultato della stringa di visita del corpo del case switch.
wrappedEvalTextContainsExpression(string, RegExp)
Sostituisce un'espressione contenuta nel testo.
function wrappedEvalTextContainsExpression(exp: string, regex: RegExp): string
Parametri
- exp
-
string
Testo dell'espressione.
- regex
-
RegExp
Regex per selezionare il testo da sostituire.
Restituisce
string
Testo con espressione sostituita.
Dettagli dei metodi ereditati
visit(ParseTree)
{@inheritDoc} L'implementazione predefinita chiama <xref:ParseTree%23accept> sull'albero specificato.
function visit(tree: ParseTree): unknown
Parametri
- tree
-
ParseTree
Restituisce
unknown
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): unknown
Parametri
- node
-
RuleNode
Restituisce
unknown
Ereditato da AbstractParseTreeVisitor.visitChildren
visitErrorNode(ErrorNode)
{@inheritDoc} L'implementazione predefinita restituisce il risultato di defaultResult.
function visitErrorNode(node: ErrorNode): unknown
Parametri
- node
-
ErrorNode
Restituisce
unknown
Ereditato da AbstractParseTreeVisitor.visitErrorNode
visitTerminal(TerminalNode)
{@inheritDoc} L'implementazione predefinita restituisce il risultato di defaultResult.
function visitTerminal(node: TerminalNode): unknown
Parametri
- node
-
TerminalNode
Restituisce
unknown
ereditato da AbstractParseTreeVisitor.visitTerminal