共用方式為


Clause class

標準一般格式表達式。

Extends

建構函式

Clause(Clause | Expression | Expression[])

初始化 Clause 類別的新實例。

屬性

anyBindings

取得或設定 anyBinding 字典。

returnType

評估表達式的預期結果。

subsumed

取得或設定 子句是否為子句。

type

表達式的類型。

繼承的屬性

children

子表達式。

evaluator

表達式評估工具。

functions

function => 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)

透過狀態從 lamba 表達式建構表達式。 例外狀況將會攔截並呈現為錯誤字串。

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.評估工具

functions

function => ExpressionEvaluator 的字典。 這是所有可用的函式,您可以將自定義函式新增至其中,但無法取代內建函式。 如果您清除字典,則會重設為內建函式。

static functions: FunctionTable = new FunctionTable()

屬性值

繼承自Expression.functions

方法詳細資料

matches(Clause, MemoryInterface | any)

判斷目前的 Clause 是否符合另一個 Clause

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

參數

clause
Clause

要比較的另一個 Clause 實例。

memory

MemoryInterface | any

查閱變數的範圍。

傳回

boolean

布爾值,指出兩個子句是否相符。

relationship(Clause, PredicateComparers)

比較目前的 Clause 與另一個 Clause

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

參數

other
Clause

要比較的其他 Clause

comparers
PredicateComparers

比較子,這是具有字串索引鍵的 PredicateComparer 字典。

傳回

兩個 Clause 實例之間的 RelationshipType 值。

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[]

子句。

傳回

新運算式。

繼承自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)

透過狀態從 lamba 表達式建構表達式。 例外狀況將會攔截並呈現為錯誤字串。

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[]

子句。

傳回

新運算式。

繼承自 expression.orExpressionexpression.orExpression

parse(string, EvaluatorLookup)

將表達式字串剖析成 Expression 物件。

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

參數

expression

string

表達式字串。

lookup
EvaluatorLookup

自選。 剖析表達式時,評估工具Lookup 函式查閱。 默認值為 Expression.lookup,它會使用 Expression.functions 數據表。

傳回

表達式物件。

繼承自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()

繼承自Expression.validate

validateTree()

以遞歸方式驗證表達式樹狀結構。

function validateTree()

繼承自Expression.validateTree