Compartir a través de


Evaluator class

Motor en tiempo de ejecución de evaluación

Extends

AbstractParseTreeVisitor<unknown>

Constructores

Evaluator(Templates, EvaluationOptions)

Crea una nueva instancia de la clase evaluador de .

Propiedades

activityAttachmentFunctionName
expandTextFunctionName
expressionParser

Analizador de expresiones.

fromFileFunctionName
isTemplateFunctionName
LGType
ReExecuteSuffix
templateFunctionName
templateMap

TemplateMap.

templates

Plantillas.

Métodos

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

Comprueba un resultado de expresión y produce el error correspondiente.

concatErrorMsg(string, string)

Concatena dos mensajes de error.

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

Construye el ámbito para asignar los valores de argumentos a los parámetros de la plantilla. Produce errores si se detectan determinados errores TemplateErrors.

evaluateTemplate(string, unknown)

Evalúe una plantilla con el nombre y el ámbito especificados.

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.

visitSwitchCaseBody(SwitchCaseBodyContext)

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

wrappedEvalTextContainsExpression(string, RegExp)

Reemplaza una expresión contenida en el texto.

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

Evaluator(Templates, EvaluationOptions)

Crea una nueva instancia de la clase evaluador de .

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

Parámetros

templates
Templates

Plantillas.

opt
EvaluationOptions

Opciones para LG.

Detalles de las propiedades

activityAttachmentFunctionName

static activityAttachmentFunctionName: "ActivityAttachment" = "ActivityAttachment"

Valor de propiedad

"ActivityAttachment"

expandTextFunctionName

static expandTextFunctionName: "expandText" = "expandText"

Valor de propiedad

"expandText"

expressionParser

Analizador de expresiones.

expressionParser: ExpressionParser

Valor de propiedad

ExpressionParser

fromFileFunctionName

static fromFileFunctionName: "fromFile" = "fromFile"

Valor de propiedad

"fromFile"

isTemplateFunctionName

static isTemplateFunctionName: "isTemplate" = "isTemplate"

Valor de propiedad

"isTemplate"

LGType

static LGType: "lgType" = "lgType"

Valor de propiedad

"lgType"

ReExecuteSuffix

static ReExecuteSuffix: "!" = "!"

Valor de propiedad

"!"

templateFunctionName

static templateFunctionName: "template" = "template"

Valor de propiedad

"template"

templateMap

TemplateMap.

templateMap: [key: string]: Template

Valor de propiedad

[key: string]: Template

templates

Plantillas.

templates: Templates

Valor de propiedad

Detalles del método

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

Comprueba un resultado de expresión y produce el error correspondiente.

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

Parámetros

exp

string

Texto de expresión.

error

string

Mensaje de error.

result

unknown

Resultado.

templateName

string

Nombre de plantilla.

inlineContent

string

Opcional. Contenido en línea.

errorPrefix

string

Opcional. Prefijo de error.

concatErrorMsg(string, string)

Concatena dos mensajes de error.

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

Parámetros

firstError

string

Primer mensaje de error para concatenar.

secondError

string

Segundo mensaje de error para concatenar.

Devoluciones

string

Mensajes de error concatenados.

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

Construye el ámbito para asignar los valores de argumentos a los parámetros de la plantilla. Produce errores si se detectan determinados errores TemplateErrors.

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

Parámetros

inputTemplateName

string

Nombre de plantilla que se va a evaluar.

args

unknown[]

Argumentos que se van a asignar a los parámetros de plantilla.

allTemplates

Template[]

Todas las plantillas.

Devoluciones

MemoryInterface

El ámbito actual si el número de argumentos es 0; de lo contrario, devuelve un CustomdMemory con la asignación del nombre del parámetro al valor de argumento agregado al ámbito.

evaluateTemplate(string, unknown)

Evalúe una plantilla con el nombre y el ámbito especificados.

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

Parámetros

inputTemplateName

string

Nombre de plantilla.

scope

unknown

Alcance.

Devoluciones

unknown

Evaluar el resultado.

visitIfElseBody(IfElseBodyContext)

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

function visitIfElseBody(ctx: IfElseBodyContext): unknown

Parámetros

ctx
IfElseBodyContext

Árbol de análisis.

Devoluciones

unknown

Resultado del visitante.

visitNormalBody(NormalBodyContext)

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

function visitNormalBody(ctx: NormalBodyContext): unknown

Parámetros

ctx
NormalBodyContext

Árbol de análisis.

Devoluciones

unknown

Resultado de visitar el cuerpo normal.

visitNormalTemplateBody(NormalTemplateBodyContext)

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

function visitNormalTemplateBody(ctx: NormalTemplateBodyContext): unknown

Parámetros

ctx
NormalTemplateBodyContext

Árbol de análisis.

Devoluciones

unknown

Resultado de visitar el cuerpo de la plantilla normal.

visitNormalTemplateString(NormalTemplateStringContext)

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

function visitNormalTemplateString(ctx: NormalTemplateStringContext): unknown

Parámetros

ctx
NormalTemplateStringContext

Árbol de análisis.

Devoluciones

unknown

Resultado de la cadena de visitar la cadena de plantilla normal.

visitStructuredTemplateBody(StructuredTemplateBodyContext)

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

function visitStructuredTemplateBody(ctx: StructuredTemplateBodyContext): unknown

Parámetros

ctx
StructuredTemplateBodyContext

Árbol de análisis.

Devoluciones

unknown

Resultado de visitar el cuerpo de la plantilla estructurada.

visitSwitchCaseBody(SwitchCaseBodyContext)

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

function visitSwitchCaseBody(ctx: SwitchCaseBodyContext): unknown

Parámetros

ctx
SwitchCaseBodyContext

Árbol de análisis.

Devoluciones

unknown

Resultado de la cadena de visitar el cuerpo del caso modificador.

wrappedEvalTextContainsExpression(string, RegExp)

Reemplaza una expresión contenida en el texto.

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

Parámetros

exp

string

Texto de expresión.

regex

RegExp

Regex para seleccionar el texto que se va a reemplazar.

Devoluciones

string

Texto con expresión reemplazada.

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): unknown

Parámetros

tree

ParseTree

Devoluciones

unknown

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): unknown

Parámetros

node

RuleNode

Devoluciones

unknown

Heredado de AbstractParseTreeVisitor.visitChildren

visitErrorNode(ErrorNode)

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

function visitErrorNode(node: ErrorNode): unknown

Parámetros

node

ErrorNode

Devoluciones

unknown

heredado de AbstractParseTreeVisitor.visitErrorNode

visitTerminal(TerminalNode)

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

function visitTerminal(node: TerminalNode): unknown

Parámetros

node

TerminalNode

Devoluciones

unknown

heredado de AbstractParseTreeVisitor.visitTerminal