Freigeben über


Evaluator class

Auswertungslaufzeitmodul

Extends

AbstractParseTreeVisitor<unknown>

Konstruktoren

Evaluator(Templates, EvaluationOptions)

Erstellt eine neue Instanz der Evaluator Klasse.

Eigenschaften

activityAttachmentFunctionName
expandTextFunctionName
expressionParser

Ausdrucksparser.

fromFileFunctionName
isTemplateFunctionName
LGType
ReExecuteSuffix
templateFunctionName
templateMap

TemplateMap.

templates

Schablonen.

Methoden

checkExpressionResult(string, string, unknown, string, string, string)

Überprüft ein Ausdrucksergebnis und löst den entsprechenden Fehler aus.

concatErrorMsg(string, string)

Verkettet zwei Fehlermeldungen.

constructScope(string, unknown[], Template[])

Erstellt den Bereich zum Zuordnen der Werte von Argumenten zu den Parametern der Vorlage. Löst Fehler aus, wenn bestimmte Fehler TemplateErrorserkannt wurden.

evaluateTemplate(string, unknown)

Auswerten einer Vorlage mit angegebenem Namen und Bereich.

visitIfElseBody(IfElseBodyContext)

Besuchen Sie einen Parsebaum, der von der ifElseBody-Alternative in LGTemplateParser.body erstellt wurde.

visitNormalBody(NormalBodyContext)

Besuchen Sie einen Parsebaum, der von der normalBody-Alternative in LGTemplateParser.body produziert wird.

visitNormalTemplateBody(NormalTemplateBodyContext)

Besuchen Sie einen Parsebaum, der von LGTemplateParser.normalTemplateBody produziert wird.

visitNormalTemplateString(NormalTemplateStringContext)

Besuchen Sie einen Parsebaum, der von LGTemplateParser.normalTemplateString produziert wird.

visitStructuredTemplateBody(StructuredTemplateBodyContext)

Besuchen Sie einen Parsebaum, der von LGTemplateParser.structuredTemplateBody produziert wird.

visitSwitchCaseBody(SwitchCaseBodyContext)

Besuchen Sie einen Parsebaum, der von der switchCaseBody-Alternative in LGTemplateParser.body erstellt wurde.

wrappedEvalTextContainsExpression(string, RegExp)

Ersetzt einen Ausdruck, der in Text enthalten ist.

Geerbte Methoden

visit(ParseTree)

{@inheritDoc} Die Standardimplementierung ruft <xref:ParseTree%23accept> für die angegebene Struktur auf.

visitChildren(RuleNode)

{@inheritDoc} Die Standardimplementierung initialisiert das Aggregatergebnis defaultResult(). Bevor sie jedes Kind besuchen, ruft es sollteVisitNextChild; wenn das Ergebnis false keine weiteren Untergeordneten besucht werden und das aktuelle Aggregatergebnis zurückgegeben wird. Nach dem Besuch eines Kindes wird das Aggregatergebnis aktualisiert, indem aggregateResult mit dem vorherigen Aggregatergebnis und dem Ergebnis des Besuchs des Kindes aufgerufen wird.

Die Standardimplementierung ist für Besucher, die die Struktur ändern, nicht sicher. Besucher, die den Baum ändern, sollten diese Methode überschreiben, um sich im Hinblick auf den verwendeten Algorithmus ordnungsgemäß zu verhalten.

visitErrorNode(ErrorNode)

{@inheritDoc} Die Standardimplementierung gibt das Ergebnis defaultResult-zurück.

visitTerminal(TerminalNode)

{@inheritDoc} Die Standardimplementierung gibt das Ergebnis defaultResult-zurück.

Details zum Konstruktor

Evaluator(Templates, EvaluationOptions)

Erstellt eine neue Instanz der Evaluator Klasse.

new Evaluator(templates: Templates, opt?: EvaluationOptions)

Parameter

templates
Templates

Schablonen.

opt
EvaluationOptions

Optionen für LG.

Details zur Eigenschaft

activityAttachmentFunctionName

static activityAttachmentFunctionName: "ActivityAttachment" = "ActivityAttachment"

Eigenschaftswert

"ActivityAttachment"

expandTextFunctionName

static expandTextFunctionName: "expandText" = "expandText"

Eigenschaftswert

"expandText"

expressionParser

Ausdrucksparser.

expressionParser: ExpressionParser

Eigenschaftswert

ExpressionParser

fromFileFunctionName

static fromFileFunctionName: "fromFile" = "fromFile"

Eigenschaftswert

"fromFile"

isTemplateFunctionName

static isTemplateFunctionName: "isTemplate" = "isTemplate"

Eigenschaftswert

"isTemplate"

LGType

static LGType: "lgType" = "lgType"

Eigenschaftswert

"lgType"

ReExecuteSuffix

static ReExecuteSuffix: "!" = "!"

Eigenschaftswert

"!"

templateFunctionName

static templateFunctionName: "template" = "template"

Eigenschaftswert

"template"

templateMap

TemplateMap.

templateMap: [key: string]: Template

Eigenschaftswert

[key: string]: Template

templates

Schablonen.

templates: Templates

Eigenschaftswert

Details zur Methode

checkExpressionResult(string, string, unknown, string, string, string)

Überprüft ein Ausdrucksergebnis und löst den entsprechenden Fehler aus.

static function checkExpressionResult(exp: string, error: string, result: unknown, templateName: string, inlineContent: string, errorPrefix: string)

Parameter

exp

string

Ausdruckstext.

error

string

Fehlermeldung.

result

unknown

Ergebnis.

templateName

string

Vorlagenname.

inlineContent

string

Wahlfrei. In Zeileninhalt.

errorPrefix

string

Wahlfrei. Fehlerpräfix.

concatErrorMsg(string, string)

Verkettet zwei Fehlermeldungen.

static function concatErrorMsg(firstError: string, secondError: string): string

Parameter

firstError

string

Erste Fehlermeldung, die verkettet werden soll.

secondError

string

Zweite Fehlermeldung, die verkettet werden soll.

Gibt zurück

string

Die verketteten Fehlermeldungen.

constructScope(string, unknown[], Template[])

Erstellt den Bereich zum Zuordnen der Werte von Argumenten zu den Parametern der Vorlage. Löst Fehler aus, wenn bestimmte Fehler TemplateErrorserkannt wurden.

function constructScope(inputTemplateName: string, args: unknown[], allTemplates: Template[]): MemoryInterface

Parameter

inputTemplateName

string

Der zu bewertende Vorlagenname.

args

unknown[]

Argumente, die den Vorlagenparametern zugeordnet werden sollen.

allTemplates

Template[]

Alle Vorlagen.

Gibt zurück

MemoryInterface

Der aktuelle Bereich, wenn die Anzahl der Argumente 0 ist, andernfalls wird ein CustomMemory- mit der Zuordnung des Parameternamens zum Argumentwert zurückgegeben, der dem Bereich hinzugefügt wird.

evaluateTemplate(string, unknown)

Auswerten einer Vorlage mit angegebenem Namen und Bereich.

function evaluateTemplate(inputTemplateName: string, scope: unknown): unknown

Parameter

inputTemplateName

string

Vorlagenname.

scope

unknown

Umfang.

Gibt zurück

unknown

Ergebnis auswerten.

visitIfElseBody(IfElseBodyContext)

Besuchen Sie einen Parsebaum, der von der ifElseBody-Alternative in LGTemplateParser.body erstellt wurde.

function visitIfElseBody(ctx: IfElseBodyContext): unknown

Parameter

ctx
IfElseBodyContext

Die Analysestruktur.

Gibt zurück

unknown

Das Besucherergebnis.

visitNormalBody(NormalBodyContext)

Besuchen Sie einen Parsebaum, der von der normalBody-Alternative in LGTemplateParser.body produziert wird.

function visitNormalBody(ctx: NormalBodyContext): unknown

Parameter

ctx
NormalBodyContext

Die Analysestruktur.

Gibt zurück

unknown

Das Ergebnis des Besuchs des normalen Körpers.

visitNormalTemplateBody(NormalTemplateBodyContext)

Besuchen Sie einen Parsebaum, der von LGTemplateParser.normalTemplateBody produziert wird.

function visitNormalTemplateBody(ctx: NormalTemplateBodyContext): unknown

Parameter

ctx
NormalTemplateBodyContext

Die Analysestruktur.

Gibt zurück

unknown

Das Ergebnis des Besuchs des normalen Vorlagentexts.

visitNormalTemplateString(NormalTemplateStringContext)

Besuchen Sie einen Parsebaum, der von LGTemplateParser.normalTemplateString produziert wird.

function visitNormalTemplateString(ctx: NormalTemplateStringContext): unknown

Parameter

ctx
NormalTemplateStringContext

Die Analysestruktur.

Gibt zurück

unknown

Das Zeichenfolgenergebnis des Besuchs der normalen Vorlagenzeichenfolge.

visitStructuredTemplateBody(StructuredTemplateBodyContext)

Besuchen Sie einen Parsebaum, der von LGTemplateParser.structuredTemplateBody produziert wird.

function visitStructuredTemplateBody(ctx: StructuredTemplateBodyContext): unknown

Parameter

ctx
StructuredTemplateBodyContext

Die Analysestruktur.

Gibt zurück

unknown

Das Ergebnis des Besuchs des strukturierten Vorlagentexts.

visitSwitchCaseBody(SwitchCaseBodyContext)

Besuchen Sie einen Parsebaum, der von der switchCaseBody-Alternative in LGTemplateParser.body erstellt wurde.

function visitSwitchCaseBody(ctx: SwitchCaseBodyContext): unknown

Parameter

ctx
SwitchCaseBodyContext

Die Analysestruktur.

Gibt zurück

unknown

Das Zeichenfolgenergebnis für den Besuch des Falltexts von Switch.

wrappedEvalTextContainsExpression(string, RegExp)

Ersetzt einen Ausdruck, der in Text enthalten ist.

function wrappedEvalTextContainsExpression(exp: string, regex: RegExp): string

Parameter

exp

string

Ausdruckstext.

regex

RegExp

Regex, um den zu ersetzenden Text auszuwählen.

Gibt zurück

string

Text durch ersetzten Ausdruck.

Details zur geerbten Methode

visit(ParseTree)

{@inheritDoc} Die Standardimplementierung ruft <xref:ParseTree%23accept> für die angegebene Struktur auf.

function visit(tree: ParseTree): unknown

Parameter

tree

ParseTree

Gibt zurück

unknown

Geerbt von AbstractParseTreeVisitor.visit

visitChildren(RuleNode)

{@inheritDoc} Die Standardimplementierung initialisiert das Aggregatergebnis defaultResult(). Bevor sie jedes Kind besuchen, ruft es sollteVisitNextChild; wenn das Ergebnis false keine weiteren Untergeordneten besucht werden und das aktuelle Aggregatergebnis zurückgegeben wird. Nach dem Besuch eines Kindes wird das Aggregatergebnis aktualisiert, indem aggregateResult mit dem vorherigen Aggregatergebnis und dem Ergebnis des Besuchs des Kindes aufgerufen wird.

Die Standardimplementierung ist für Besucher, die die Struktur ändern, nicht sicher. Besucher, die den Baum ändern, sollten diese Methode überschreiben, um sich im Hinblick auf den verwendeten Algorithmus ordnungsgemäß zu verhalten.

function visitChildren(node: RuleNode): unknown

Parameter

node

RuleNode

Gibt zurück

unknown

Geerbt von AbstractParseTreeVisitor.visitChildren

visitErrorNode(ErrorNode)

{@inheritDoc} Die Standardimplementierung gibt das Ergebnis defaultResult-zurück.

function visitErrorNode(node: ErrorNode): unknown

Parameter

node

ErrorNode

Gibt zurück

unknown

geerbt von AbstractParseTreeVisitor.visitErrorNode

visitTerminal(TerminalNode)

{@inheritDoc} Die Standardimplementierung gibt das Ergebnis defaultResult-zurück.

function visitTerminal(node: TerminalNode): unknown

Parameter

node

TerminalNode

Gibt zurück

unknown

geerbt von AbstractParseTreeVisitor.visitTerminal