次の方法で共有


Clause class

正規正規形式の式。

Extends

コンストラクター

Clause(Clause | Expression | Expression[])

Clause クラスの新しいインスタンスを初期化します。

プロパティ

anyBindings

anyBinding ディクショナリを取得または設定します。

returnType

式を評価した結果が予想されます。

subsumed

句がサブスム化されているかどうかを取得または設定します。

type

式の型。

継承されたプロパティ

children

子式。

evaluator

式のエバリュエーター。

functions

関数のディクショナリ = expressionEvaluator>。 これはすべての使用可能な関数です。カスタム関数を追加することはできますが、組み込み関数を置き換えることはできません。 ディクショナリをクリアすると、組み込み関数にリセットされます。

メソッド

matches(Clause, MemoryInterface | any)

現在の Clause が別の Clauseと一致するかどうかを判断します。

relationship(Clause, PredicateComparers)

現在の Clause を別の Clauseと比較します。

splitIgnores()

無視された子式を分割します。

toString(string[], number)

現在の句を表す文字列を取得します。

継承されたメソッド

andExpression(Expression[])

And 式を構築して検証します。

deepEquals(Expression)

式間で深い等価性を行います。

equalsExpression(Expression[])

Equals 式を構築して検証します。

lambaExpression(EvaluateExpressionDelegate)

EvaluateExpressionDelegate から式を構築する

lambda((arg0: any) => any)

状態に対するランバ式から式を構築します。 例外がキャッチされ、エラー文字列として表示されます。

lookup(string)

ExpressionEvaluator 関数を名前で検索します。

makeExpression(string, ExpressionEvaluator, Expression[])

式を作成して検証します。

notExpression(Expression)

Not 式を構築して検証します。

orExpression(Expression[])

Or 式を構築して検証します。

parse(string, EvaluatorLookup)

式文字列を Expression オブジェクトに解析します。

references()

メモリへの静的参照パスを返します。 すべての静的パスをメモリに返します。 計算された要素インデックスがある場合、パスはそこで終了しますが、計算された部分から他のパスを取得することもできます。

referenceWalk(Expression, (arg0: Expression) => boolean)

式内の静的メモリ参照を識別するためのウォーキング関数。

setPathToValue(Expression, any)

プロパティ式を値式に設定するを構築し、検証します。

tryEvaluate(MemoryInterface | any, Options)

式を評価します。

validate()

即時式を検証します。

validateTree()

式ツリーを再帰的に検証します。

コンストラクターの詳細

Clause(Clause | Expression | Expression[])

Clause クラスの新しいインスタンスを初期化します。

new Clause(clauseOrExpression?: Clause | Expression | Expression[])

パラメーター

clauseOrExpression

Clause | Expression | Expression[]

Clauseを初期化する句、式、または式の配列。

プロパティの詳細

anyBindings

anyBinding ディクショナリを取得または設定します。

anyBindings: Map<string, string> = new Map<string, string>()

プロパティ値

Map<string, string>

returnType

式を評価した結果が予想されます。

ReturnType returnType

プロパティ値

式を評価した場合に予想される結果。

subsumed

句がサブスム化されているかどうかを取得または設定します。

subsumed: boolean = false

プロパティ値

boolean

type

式の型。

string type

プロパティ値

string

式の型。

継承されたプロパティの詳細

children

子式。

children: Expression[]

プロパティ値

expression.children から継承

evaluator

式のエバリュエーター。

evaluator: ExpressionEvaluator

プロパティ値

Expression.evaluator から継承された

functions

関数のディクショナリ = expressionEvaluator>。 これはすべての使用可能な関数です。カスタム関数を追加することはできますが、組み込み関数を置き換えることはできません。 ディクショナリをクリアすると、組み込み関数にリセットされます。

static functions: FunctionTable = new FunctionTable()

プロパティ値

Expression.functions から継承された

メソッドの詳細

matches(Clause, MemoryInterface | any)

現在の Clause が別の Clauseと一致するかどうかを判断します。

function matches(clause: Clause, memory: MemoryInterface | any): boolean

パラメーター

clause
Clause

比較するもう 1 つの Clause インスタンス。

memory

MemoryInterface | any

変数を検索するためのスコープ。

戻り値

boolean

2 つの句が一致するかどうかを示すブール値。

relationship(Clause, PredicateComparers)

現在の Clause を別の Clauseと比較します。

function relationship(other: Clause, comparers: PredicateComparers): RelationshipType

パラメーター

other
Clause

比較するもう 1 つの Clause

comparers
PredicateComparers

比較子。文字列キーを持つ PredicateComparer のディクショナリです。

戻り値

2 つの RelationshipType インスタンス間の Clause 値。

splitIgnores()

無視された子式を分割します。

function splitIgnores()

toString(string[], number)

現在の句を表す文字列を取得します。

function toString(builder: string[], indent: number): string

パラメーター

builder

string[]

句の文字列を作成する文字列の配列。

indent

number

整数は、行の先頭にあるスペースの数を表します。

戻り値

string

現在の句を表す文字列。

継承済みメソッドの詳細

andExpression(Expression[])

And 式を構築して検証します。

static function andExpression(children: Expression[]): Expression

パラメーター

children

Expression[]

子句。

戻り値

新しい式。

式から継承された .andExpression

deepEquals(Expression)

式間で深い等価性を行います。

function deepEquals(other: Expression): boolean

パラメーター

other
Expression

その他の式。

戻り値

boolean

True の 場合は、式が同じです。

Expression.deepEquals から継承された

equalsExpression(Expression[])

Equals 式を構築して検証します。

static function equalsExpression(children: Expression[]): Expression

パラメーター

children

Expression[]

子句。

戻り値

新しい式。

Expression.equalsExpression から継承された

lambaExpression(EvaluateExpressionDelegate)

EvaluateExpressionDelegate から式を構築する

static function lambaExpression(func: EvaluateExpressionDelegate): Expression

パラメーター

func
EvaluateExpressionDelegate

式を作成する関数。

戻り値

新しい式。

Expression.lambaExpression から継承

lambda((arg0: any) => any)

状態に対するランバ式から式を構築します。 例外がキャッチされ、エラー文字列として表示されます。

static function lambda(func: (arg0: any) => any): Expression

パラメーター

func

(arg0: any) => any

評価する ambda 式。

戻り値

新しい式。

Expression.lambda から継承された

lookup(string)

ExpressionEvaluator 関数を名前で検索します。

static function lookup(functionName: string): ExpressionEvaluator

パラメーター

functionName

string

参照する関数の名前。

戻り値

ExpressionEvaluator 関数名に対応します。

Expression.lookup から継承された

makeExpression(string, ExpressionEvaluator, Expression[])

式を作成して検証します。

static function makeExpression(type: string, evaluator: ExpressionEvaluator, children: Expression[]): Expression

パラメーター

type

string

ExpressionType からの式の型。

evaluator
ExpressionEvaluator

式を検証および評価する方法に関する情報。

children

Expression[]

子式。

戻り値

新しい式。

expression.makeExpression から継承

notExpression(Expression)

Not 式を構築して検証します。

static function notExpression(child: Expression): Expression

パラメーター

child
Expression

子句。

戻り値

新しい式。

Expression.notExpression から継承された

orExpression(Expression[])

Or 式を構築して検証します。

static function orExpression(children: Expression[]): Expression

パラメーター

children

Expression[]

子句。

戻り値

新しい式。

式から継承.orExpression

parse(string, EvaluatorLookup)

式文字列を Expression オブジェクトに解析します。

static function parse(expression: string, lookup?: EvaluatorLookup): Expression

パラメーター

expression

string

式の文字列。

lookup
EvaluatorLookup

随意。 式を解析するときに、関数参照 EvaluatorLookup を使用します。 既定値は、expression.functions テーブル 使用する Expression.lookup です。

戻り値

式オブジェクト。

Expression.parse から継承された

references()

メモリへの静的参照パスを返します。 すべての静的パスをメモリに返します。 計算された要素インデックスがある場合、パスはそこで終了しますが、計算された部分から他のパスを取得することもできます。

function references(): string[]

戻り値

string[]

静的参照パスの一覧。

Expression.references から継承された

referenceWalk(Expression, (arg0: Expression) => boolean)

式内の静的メモリ参照を識別するためのウォーキング関数。

function referenceWalk(expression: Expression, extension?: (arg0: Expression) => boolean): { path: string, refs: Set<string> }

パラメーター

expression
Expression

分析する式。

extension

(arg0: Expression) => boolean

存在する場合は、テンプレート拡張などの検索をオーバーライドするために呼び出されます。

戻り値

{ path: string, refs: Set<string> }

式のアクセサー パス。

Expression.referenceWalk から継承された

setPathToValue(Expression, any)

プロパティ式を値式に設定するを構築し、検証します。

static function setPathToValue(property: Expression, value: any): Expression

パラメーター

property
Expression

プロパティ式。

value

any

value 式。

戻り値

新しい式。

expression.setPathToValueから継承された

tryEvaluate(MemoryInterface | any, Options)

式を評価します。

function tryEvaluate(state: MemoryInterface | any, options: Options): ValueWithError

パラメーター

state

MemoryInterface | any

アクセサー式を評価するグローバル状態。 Dictionary にできます。それ以外の場合は、リフレクションを使用してプロパティにアクセスし、インデクサーを使用します。

options
Options

評価で使用されるオプション。

戻り値

計算値とエラー文字列。 文字列が null 以外の場合は、評価エラーが発生しました。

Expression.tryEvaluate から継承された

validate()

即時式を検証します。

function validate()

式から継承された .validate

validateTree()

式ツリーを再帰的に検証します。

function validateTree()

Expression.validateTree から継承された