Partager via


Evaluator class

Moteur d’exécution d’évaluation

Extends

AbstractParseTreeVisitor<unknown>

Constructeurs

Evaluator(Templates, EvaluationOptions)

Crée une instance de la classe Évaluateur .

Propriétés

activityAttachmentFunctionName
expandTextFunctionName
expressionParser

Analyseur d’expressions.

fromFileFunctionName
isTemplateFunctionName
LGType
ReExecuteSuffix
templateFunctionName
templateMap

TemplateMap.

templates

Modèles.

Méthodes

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

Vérifie le résultat d’une expression et lève l’erreur correspondante.

concatErrorMsg(string, string)

Concatène deux messages d’erreur.

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

Construit l’étendue pour le mappage des valeurs des arguments aux paramètres du modèle. Lève les erreurs si certaines erreurs ont détecté TemplateErrors.

evaluateTemplate(string, unknown)

Évaluez un modèle avec un nom et une étendue donnés.

visitIfElseBody(IfElseBodyContext)

Visitez un arbre d’analyse produit par l’alternative ifElseBody étiquetée dans LGTemplateParser.body.

visitNormalBody(NormalBodyContext)

Visitez un arbre d’analyse produit par l’alternative normalBody étiquetée dans LGTemplateParser.body.

visitNormalTemplateBody(NormalTemplateBodyContext)

Visitez un arbre d’analyse produit par LGTemplateParser.normalTemplateBody.

visitNormalTemplateString(NormalTemplateStringContext)

Visitez un arbre d’analyse produit par LGTemplateParser.normalTemplateString.

visitStructuredTemplateBody(StructuredTemplateBodyContext)

Visitez un arbre d’analyse produit par LGTemplateParser.structuredTemplateBody.

visitSwitchCaseBody(SwitchCaseBodyContext)

Visitez un arbre d’analyse produit par l’alternative switchCaseBody étiquetée dans LGTemplateParser.body.

wrappedEvalTextContainsExpression(string, RegExp)

Remplace une expression contenue dans le texte.

Méthodes héritées

visit(ParseTree)

{@inheritDoc} L’implémentation par défaut appelle <xref:ParseTree%23accept> sur l’arborescence spécifiée.

visitChildren(RuleNode)

{@inheritDoc} L’implémentation par défaut initialise le résultat d’agrégation en defaultResult(). Avant de visiter chaque enfant, il appelle shouldVisitNextChild ; si le résultat est false que les enfants ne sont plus visités et que le résultat d’agrégation actuel est retourné. Après avoir visité un enfant, le résultat d’agrégation est mis à jour en appelant aggregateResult avec le résultat d’agrégation précédent et le résultat de la visite de l’enfant.

L’implémentation par défaut n’est pas sécurisée pour une utilisation dans les visiteurs qui modifient l’arborescence. Les visiteurs qui modifient l’arborescence doivent remplacer cette méthode pour se comporter correctement par rapport à l’algorithme spécifique utilisé.

visitErrorNode(ErrorNode)

{@inheritDoc} L’implémentation par défaut retourne le résultat de defaultResult.

visitTerminal(TerminalNode)

{@inheritDoc} L’implémentation par défaut retourne le résultat de defaultResult.

Détails du constructeur

Evaluator(Templates, EvaluationOptions)

Crée une instance de la classe Évaluateur .

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

Paramètres

templates
Templates

Modèles.

opt
EvaluationOptions

Options pour LG.

Détails de la propriété

activityAttachmentFunctionName

static activityAttachmentFunctionName: "ActivityAttachment" = "ActivityAttachment"

Valeur de propriété

"ActivityAttachment"

expandTextFunctionName

static expandTextFunctionName: "expandText" = "expandText"

Valeur de propriété

"expandText"

expressionParser

Analyseur d’expressions.

expressionParser: ExpressionParser

Valeur de propriété

ExpressionParser

fromFileFunctionName

static fromFileFunctionName: "fromFile" = "fromFile"

Valeur de propriété

"fromFile"

isTemplateFunctionName

static isTemplateFunctionName: "isTemplate" = "isTemplate"

Valeur de propriété

"isTemplate"

LGType

static LGType: "lgType" = "lgType"

Valeur de propriété

"lgType"

ReExecuteSuffix

static ReExecuteSuffix: "!" = "!"

Valeur de propriété

"!"

templateFunctionName

static templateFunctionName: "template" = "template"

Valeur de propriété

"template"

templateMap

TemplateMap.

templateMap: [key: string]: Template

Valeur de propriété

[key: string]: Template

templates

Modèles.

templates: Templates

Valeur de propriété

Détails de la méthode

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

Vérifie le résultat d’une expression et lève l’erreur correspondante.

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

Paramètres

exp

string

Texte d’expression.

error

string

Message d’erreur.

result

unknown

Résultat.

templateName

string

Nom du modèle.

inlineContent

string

facultatif. Contenu en ligne.

errorPrefix

string

facultatif. Préfixe d’erreur.

concatErrorMsg(string, string)

Concatène deux messages d’erreur.

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

Paramètres

firstError

string

Premier message d’erreur à concaténer.

secondError

string

Deuxième message d’erreur à concaténer.

Retours

string

Messages d’erreur concaténés.

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

Construit l’étendue pour le mappage des valeurs des arguments aux paramètres du modèle. Lève les erreurs si certaines erreurs ont détecté TemplateErrors.

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

Paramètres

inputTemplateName

string

Nom du modèle à évaluer.

args

unknown[]

Arguments à mapper aux paramètres du modèle.

allTemplates

Template[]

Tous les modèles.

Retours

MemoryInterface

L’étendue actuelle si le nombre d’arguments est égal à 0, sinon, retourne un CustomizedMemory avec le mappage du nom du paramètre à la valeur de l’argument ajoutée à l’étendue.

evaluateTemplate(string, unknown)

Évaluez un modèle avec un nom et une étendue donnés.

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

Paramètres

inputTemplateName

string

Nom du modèle.

scope

unknown

Portée.

Retours

unknown

Évaluez le résultat.

visitIfElseBody(IfElseBodyContext)

Visitez un arbre d’analyse produit par l’alternative ifElseBody étiquetée dans LGTemplateParser.body.

function visitIfElseBody(ctx: IfElseBodyContext): unknown

Paramètres

ctx
IfElseBodyContext

Arbre d’analyse.

Retours

unknown

Résultat du visiteur.

visitNormalBody(NormalBodyContext)

Visitez un arbre d’analyse produit par l’alternative normalBody étiquetée dans LGTemplateParser.body.

function visitNormalBody(ctx: NormalBodyContext): unknown

Paramètres

ctx
NormalBodyContext

Arbre d’analyse.

Retours

unknown

Résultat de la visite du corps normal.

visitNormalTemplateBody(NormalTemplateBodyContext)

Visitez un arbre d’analyse produit par LGTemplateParser.normalTemplateBody.

function visitNormalTemplateBody(ctx: NormalTemplateBodyContext): unknown

Paramètres

ctx
NormalTemplateBodyContext

Arbre d’analyse.

Retours

unknown

Résultat de la visite du corps normal du modèle.

visitNormalTemplateString(NormalTemplateStringContext)

Visitez un arbre d’analyse produit par LGTemplateParser.normalTemplateString.

function visitNormalTemplateString(ctx: NormalTemplateStringContext): unknown

Paramètres

ctx
NormalTemplateStringContext

Arbre d’analyse.

Retours

unknown

Résultat de chaîne de la visite de la chaîne de modèle normale.

visitStructuredTemplateBody(StructuredTemplateBodyContext)

Visitez un arbre d’analyse produit par LGTemplateParser.structuredTemplateBody.

function visitStructuredTemplateBody(ctx: StructuredTemplateBodyContext): unknown

Paramètres

ctx
StructuredTemplateBodyContext

Arbre d’analyse.

Retours

unknown

Résultat de la visite du corps du modèle structuré.

visitSwitchCaseBody(SwitchCaseBodyContext)

Visitez un arbre d’analyse produit par l’alternative switchCaseBody étiquetée dans LGTemplateParser.body.

function visitSwitchCaseBody(ctx: SwitchCaseBodyContext): unknown

Paramètres

ctx
SwitchCaseBodyContext

Arbre d’analyse.

Retours

unknown

Résultat de chaîne de la visite du corps du cas de commutateur.

wrappedEvalTextContainsExpression(string, RegExp)

Remplace une expression contenue dans le texte.

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

Paramètres

exp

string

Expression Texte.

regex

RegExp

Regex pour sélectionner le texte à remplacer.

Retours

string

Texte avec expression remplacée.

Détails de la méthode héritée

visit(ParseTree)

{@inheritDoc} L’implémentation par défaut appelle <xref:ParseTree%23accept> sur l’arborescence spécifiée.

function visit(tree: ParseTree): unknown

Paramètres

tree

ParseTree

Retours

unknown

Hérité de AbstractParseTreeVisitor.visit

visitChildren(RuleNode)

{@inheritDoc} L’implémentation par défaut initialise le résultat d’agrégation en defaultResult(). Avant de visiter chaque enfant, il appelle shouldVisitNextChild ; si le résultat est false que les enfants ne sont plus visités et que le résultat d’agrégation actuel est retourné. Après avoir visité un enfant, le résultat d’agrégation est mis à jour en appelant aggregateResult avec le résultat d’agrégation précédent et le résultat de la visite de l’enfant.

L’implémentation par défaut n’est pas sécurisée pour une utilisation dans les visiteurs qui modifient l’arborescence. Les visiteurs qui modifient l’arborescence doivent remplacer cette méthode pour se comporter correctement par rapport à l’algorithme spécifique utilisé.

function visitChildren(node: RuleNode): unknown

Paramètres

node

RuleNode

Retours

unknown

Hérité de AbstractParseTreeVisitor.visitChildren

visitErrorNode(ErrorNode)

{@inheritDoc} L’implémentation par défaut retourne le résultat de defaultResult.

function visitErrorNode(node: ErrorNode): unknown

Paramètres

node

ErrorNode

Retours

unknown

Hérité de AbstractParseTreeVisitor.visitErrorNode

visitTerminal(TerminalNode)

{@inheritDoc} L’implémentation par défaut retourne le résultat de defaultResult.

function visitTerminal(node: TerminalNode): unknown

Paramètres

node

TerminalNode

Retours

unknown

Hérité de AbstractParseTreeVisitor.visitTerminal