次の方法で共有


Evaluator class

評価ランタイム エンジン

Extends

AbstractParseTreeVisitor<unknown>

コンストラクター

Evaluator(Templates, EvaluationOptions)

エバリュエーター クラスの新しいインスタンスを作成します。

プロパティ

activityAttachmentFunctionName
expandTextFunctionName
expressionParser

式パーサー。

fromFileFunctionName
isTemplateFunctionName
LGType
ReExecuteSuffix
templateFunctionName
templateMap

TemplateMap。

templates

テンプレート。

メソッド

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

式の結果を確認し、対応するエラーをスローします。

concatErrorMsg(string, string)

2 つのエラー メッセージを連結します。

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

引数の値をテンプレートのパラメーターにマッピングするためのスコープを構築します。 特定のエラーで TemplateErrors が検出された場合にエラーをスローします。

evaluateTemplate(string, unknown)

指定された名前とスコープを使用してテンプレートを評価します。

visitIfElseBody(IfElseBodyContext)

LGTemplateParser.body でラベル付けされた代替の ifElseBody によって生成された解析ツリーにアクセスします。

visitNormalBody(NormalBodyContext)

LGTemplateParser.body の代替としてラベル付けされた normalBody によって生成された解析ツリーにアクセスします。

visitNormalTemplateBody(NormalTemplateBodyContext)

LGTemplateParser.normalTemplateBody によって生成された解析ツリーにアクセスします。

visitNormalTemplateString(NormalTemplateStringContext)

LGTemplateParser.normalTemplateString によって生成された解析ツリーにアクセスします。

visitStructuredTemplateBody(StructuredTemplateBodyContext)

LGTemplateParser.structuredTemplateBody によって生成された解析ツリーにアクセスします。

visitSwitchCaseBody(SwitchCaseBodyContext)

LGTemplateParser.body で代替としてラベル付けされた switchCaseBody によって生成された解析ツリーにアクセスします。

wrappedEvalTextContainsExpression(string, RegExp)

テキストに含まれる式を置き換えます。

継承されたメソッド

visit(ParseTree)

{@inheritDoc}既定の実装では、指定したツリーで が呼び出 <xref:ParseTree%23accept> されます。

visitChildren(RuleNode)

{@inheritDoc}既定の実装では、集計結果が defaultResult() に初期化されます。 各子にアクセスする前に、 を呼び出 す必要がありますVisitNextChild;結果がそれ以上子を false 訪問せず、現在の集計結果が返される場合。 子にアクセスした後、集計結果は、前の集計結果と子を訪問した結果で aggregateResult を呼び出すことによって更新されます。

既定の実装は、ツリー構造を変更する訪問者で使用しても安全ではありません。 ツリーを変更する訪問者は、使用中の特定のアルゴリズムに対して適切に動作するように、このメソッドをオーバーライドする必要があります。

visitErrorNode(ErrorNode)

{@inheritDoc}既定の実装では、 defaultResult の結果が返されます。

visitTerminal(TerminalNode)

{@inheritDoc}既定の実装では、 defaultResult の結果が返されます。

コンストラクターの詳細

Evaluator(Templates, EvaluationOptions)

エバリュエーター クラスの新しいインスタンスを作成します。

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

パラメーター

templates
Templates

テンプレート。

opt
EvaluationOptions

LG のオプション。

プロパティの詳細

activityAttachmentFunctionName

static activityAttachmentFunctionName: "ActivityAttachment" = "ActivityAttachment"

プロパティ値

"ActivityAttachment"

expandTextFunctionName

static expandTextFunctionName: "expandText" = "expandText"

プロパティ値

"expandText"

expressionParser

式パーサー。

expressionParser: ExpressionParser

プロパティ値

ExpressionParser

fromFileFunctionName

static fromFileFunctionName: "fromFile" = "fromFile"

プロパティ値

"fromFile"

isTemplateFunctionName

static isTemplateFunctionName: "isTemplate" = "isTemplate"

プロパティ値

"isTemplate"

LGType

static LGType: "lgType" = "lgType"

プロパティ値

"lgType"

ReExecuteSuffix

static ReExecuteSuffix: "!" = "!"

プロパティ値

"!"

templateFunctionName

static templateFunctionName: "template" = "template"

プロパティ値

"template"

templateMap

TemplateMap。

templateMap: [key: string]: Template

プロパティ値

[key: string]: Template

templates

テンプレート。

templates: Templates

プロパティ値

メソッドの詳細

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

式の結果を確認し、対応するエラーをスローします。

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

パラメーター

exp

string

式テキスト。

error

string

エラー メッセージ。

result

unknown

結果。

templateName

string

テンプレート名。

inlineContent

string

省略可能。 行コンテンツ内。

errorPrefix

string

省略可能。 エラー プレフィックス。

concatErrorMsg(string, string)

2 つのエラー メッセージを連結します。

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

パラメーター

firstError

string

連結する最初のエラー メッセージ。

secondError

string

連結する 2 番目のエラー メッセージ。

戻り値

string

連結されたエラー メッセージ。

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

引数の値をテンプレートのパラメーターにマッピングするためのスコープを構築します。 特定のエラーで TemplateErrors が検出された場合にエラーをスローします。

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

パラメーター

inputTemplateName

string

評価するテンプレート名。

args

unknown[]

テンプレート パラメーターにマップする引数。

allTemplates

Template[]

すべてのテンプレート。

戻り値

MemoryInterface

引数の数が 0 の場合は現在のスコープ。それ以外の場合は、パラメーター名をスコープに追加した引数値にマッピング した CustomizedMemory を返します。

evaluateTemplate(string, unknown)

指定された名前とスコープを使用してテンプレートを評価します。

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

パラメーター

inputTemplateName

string

テンプレート名。

scope

unknown

範囲。

戻り値

unknown

結果を評価します。

visitIfElseBody(IfElseBodyContext)

LGTemplateParser.body でラベル付けされた代替の ifElseBody によって生成された解析ツリーにアクセスします。

function visitIfElseBody(ctx: IfElseBodyContext): unknown

パラメーター

ctx
IfElseBodyContext

解析ツリー。

戻り値

unknown

訪問者の結果。

visitNormalBody(NormalBodyContext)

LGTemplateParser.body の代替としてラベル付けされた normalBody によって生成された解析ツリーにアクセスします。

function visitNormalBody(ctx: NormalBodyContext): unknown

パラメーター

ctx
NormalBodyContext

解析ツリー。

戻り値

unknown

通常の体を訪問した結果。

visitNormalTemplateBody(NormalTemplateBodyContext)

LGTemplateParser.normalTemplateBody によって生成された解析ツリーにアクセスします。

function visitNormalTemplateBody(ctx: NormalTemplateBodyContext): unknown

パラメーター

ctx
NormalTemplateBodyContext

解析ツリー。

戻り値

unknown

通常のテンプレート本文にアクセスした結果。

visitNormalTemplateString(NormalTemplateStringContext)

LGTemplateParser.normalTemplateString によって生成された解析ツリーにアクセスします。

function visitNormalTemplateString(ctx: NormalTemplateStringContext): unknown

パラメーター

ctx
NormalTemplateStringContext

解析ツリー。

戻り値

unknown

通常のテンプレート文字列にアクセスした文字列の結果。

visitStructuredTemplateBody(StructuredTemplateBodyContext)

LGTemplateParser.structuredTemplateBody によって生成された解析ツリーにアクセスします。

function visitStructuredTemplateBody(ctx: StructuredTemplateBodyContext): unknown

パラメーター

ctx
StructuredTemplateBodyContext

解析ツリー。

戻り値

unknown

構造化されたテンプレート本文にアクセスした結果。

visitSwitchCaseBody(SwitchCaseBodyContext)

LGTemplateParser.body で代替としてラベル付けされた switchCaseBody によって生成された解析ツリーにアクセスします。

function visitSwitchCaseBody(ctx: SwitchCaseBodyContext): unknown

パラメーター

ctx
SwitchCaseBodyContext

解析ツリー。

戻り値

unknown

スイッチ ケース本文にアクセスした文字列の結果。

wrappedEvalTextContainsExpression(string, RegExp)

テキストに含まれる式を置き換えます。

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

パラメーター

exp

string

式テキスト。

regex

RegExp

置き換えるテキストを選択する正規表現。

戻り値

string

式が置き換えられたテキスト。

継承済みメソッドの詳細

visit(ParseTree)

{@inheritDoc}既定の実装では、指定したツリーで が呼び出 <xref:ParseTree%23accept> されます。

function visit(tree: ParseTree): unknown

パラメーター

tree

ParseTree

戻り値

unknown

継承元 AbstractParseTreeVisitor.visit

visitChildren(RuleNode)

{@inheritDoc}既定の実装では、集計結果が defaultResult() に初期化されます。 各子にアクセスする前に、 を呼び出 す必要がありますVisitNextChild;結果がそれ以上子を false 訪問せず、現在の集計結果が返される場合。 子にアクセスした後、集計結果は、前の集計結果と子を訪問した結果で aggregateResult を呼び出すことによって更新されます。

既定の実装は、ツリー構造を変更する訪問者で使用しても安全ではありません。 ツリーを変更する訪問者は、使用中の特定のアルゴリズムに対して適切に動作するように、このメソッドをオーバーライドする必要があります。

function visitChildren(node: RuleNode): unknown

パラメーター

node

RuleNode

戻り値

unknown

継承元 AbstractParseTreeVisitor.visitChildren

visitErrorNode(ErrorNode)

{@inheritDoc}既定の実装では、 defaultResult の結果が返されます。

function visitErrorNode(node: ErrorNode): unknown

パラメーター

node

ErrorNode

戻り値

unknown

継承元 AbstractParseTreeVisitor.visitErrorNode

visitTerminal(TerminalNode)

{@inheritDoc}既定の実装では、 defaultResult の結果が返されます。

function visitTerminal(node: TerminalNode): unknown

パラメーター

node

TerminalNode

戻り値

unknown

継承元 AbstractParseTreeVisitor.visitTerminal