FunctionUtils class

AdaptiveExpression 中的实用工具函数。

属性

DefaultDateTimeFormat

默认日期时间格式字符串。

方法

apply((arg0: unknown[]) => unknown, VerifyExpression)

生成一个表达式委托,该委托在验证所有子级后应用函数。

applySequence((arg0: any[]) => any, VerifyExpression)

生成一个表达式委托,该委托在验证所有子级后对累积值应用函数。

applySequenceWithError((arg0: any[]) => any, VerifyExpression)

生成一个表达式委托,该委托在验证所有子级后对累积值应用函数。

applyWithError((arg0: any[]) => ValueWithError, VerifyExpression)

生成一个表达式委托,该委托在验证所有子级后应用函数。

applyWithOptions((arg0: unknown[], options: Options) => unknown, VerifyExpression)

生成一个表达式委托,该委托在验证所有子级后应用函数。

applyWithOptionsAndError((arg0: unknown[], options: Options) => { error: string, value: unknown }, VerifyExpression)

生成一个表达式委托,该委托在验证所有子级后应用函数。

commonEquals(unknown, unknown)

Equal helper 函数。 比较第一个参数和第二个参数。

determineFormatAndLocale(unknown[], number, string, string)
determineLocale(unknown[], number, string)
evaluateChildren(Expression, MemoryInterface, Options, VerifyExpression)

计算表达式子级并返回它们。

isNumber(any)

是数字帮助程序函数。

timestampFormatter(string)

时间戳格式化程序,将 C# 日期/时间转换为day.js格式。

tryAccumulatePath(Expression, MemoryInterface, Options)

用于解析内存路径的状态对象。

validateArityAndAnyType(Expression, number, number, ReturnType)

验证表达式是否具有一定数量的子级,这些子级属于任何受支持的类型。

validateAtLeastOne(Expression)

验证至少 1 个任何类型的参数。

validateBinary(Expression)

验证是否有两个子级。

validateBinaryNumber(Expression)

验证 2 个数值参数。

validateBinaryNumberOrString(Expression)

验证是否有 2 个数值或字符串参数。

validateNumber(Expression)

验证 1 个或多个数值参数。

validateOrder(Expression, ReturnType[], ReturnType[])

验证函数的参数数量和类型。

validateString(Expression)

验证 1 个或多个字符串参数。

validateTwoOrMoreThanTwoNumbers(Expression)

验证 2 个或 2 个以上的数值参数。

validateUnary(Expression)

验证是否存在单个参数。

validateUnaryBoolean(Expression)

验证是否存在单个布尔参数。

validateUnaryNumber(Expression)

验证是否存在单个参数。

validateUnaryOrBinaryNumber(Expression)

验证 1 或 2 个数值参数。

validateUnaryOrBinaryString(Expression)

验证是否存在一个或两个字符串参数。

validateUnaryString(Expression)

验证是否有单个字符串参数。

verifyBoolean(any, Expression, number)

验证值为布尔值。

verifyContainer(any, Expression, number)

验证值是否包含元素。

verifyContainerOrNull(unknown, Expression, number)

验证值是否包含元素或 null。

verifyInteger(any, Expression, number)

验证值是否为整数。

verifyList(any, Expression)

验证值是否为列表。

verifyNotNull(any, Expression, number)

验证值是否为 null 或未定义。

verifyNumber(any, Expression, number)

验证值为数值。

verifyNumberOrNumericList(any, Expression, number)

验证值为数值。

verifyNumberOrString(any, Expression, number)

验证值是否为数字或字符串。

verifyNumberOrStringOrNull(any, Expression, number)

验证值是数字或字符串还是 null。

verifyNumericList(any, Expression, number)

验证值是否为数值列表。

verifyString(any, Expression, number)

验证值是否为字符串。

verifyStringOrNull(any, Expression, number)

验证对象既不是字符串也不是 null。

属性详细信息

DefaultDateTimeFormat

默认日期时间格式字符串。

static DefaultDateTimeFormat: string = "YYYY-MM-DDTHH:mm:ss.SSS[Z]"

属性值

string

方法详细信息

apply((arg0: unknown[]) => unknown, VerifyExpression)

生成一个表达式委托,该委托在验证所有子级后应用函数。

static function apply(func: (arg0: unknown[]) => unknown, verify?: VerifyExpression): EvaluateExpressionDelegate

参数

func

(arg0: unknown[]) => unknown

要应用的函数。

verify
VerifyExpression

用于检查每个参数的有效性的函数。

返回

用于计算表达式的委托。

applySequence((arg0: any[]) => any, VerifyExpression)

生成一个表达式委托,该委托在验证所有子级后对累积值应用函数。

static function applySequence(func: (arg0: any[]) => any, verify?: VerifyExpression): EvaluateExpressionDelegate

参数

func

(arg0: any[]) => any

要应用的函数。

verify
VerifyExpression

用于检查每个参数的有效性的函数。

返回

用于计算表达式的委托。

applySequenceWithError((arg0: any[]) => any, VerifyExpression)

生成一个表达式委托,该委托在验证所有子级后对累积值应用函数。

static function applySequenceWithError(func: (arg0: any[]) => any, verify?: VerifyExpression): EvaluateExpressionDelegate

参数

func

(arg0: any[]) => any

要应用的函数。

verify
VerifyExpression

用于检查每个参数的有效性的函数。

返回

用于计算表达式的委托。

applyWithError((arg0: any[]) => ValueWithError, VerifyExpression)

生成一个表达式委托,该委托在验证所有子级后应用函数。

static function applyWithError(func: (arg0: any[]) => ValueWithError, verify?: VerifyExpression): EvaluateExpressionDelegate

参数

func

(arg0: any[]) => ValueWithError

要应用的函数。

verify
VerifyExpression

用于检查每个参数的有效性的函数。

返回

用于计算表达式的委托。

applyWithOptions((arg0: unknown[], options: Options) => unknown, VerifyExpression)

生成一个表达式委托,该委托在验证所有子级后应用函数。

static function applyWithOptions(func: (arg0: unknown[], options: Options) => unknown, verify?: VerifyExpression): EvaluateExpressionDelegate

参数

func

(arg0: unknown[], options: Options) => unknown

要应用的函数。

verify
VerifyExpression

用于检查每个参数的有效性的函数。

返回

用于计算表达式的委托。

applyWithOptionsAndError((arg0: unknown[], options: Options) => { error: string, value: unknown }, VerifyExpression)

生成一个表达式委托,该委托在验证所有子级后应用函数。

static function applyWithOptionsAndError(func: (arg0: unknown[], options: Options) => { error: string, value: unknown }, verify?: VerifyExpression): EvaluateExpressionDelegate

参数

func

(arg0: unknown[], options: Options) => { error: string, value: unknown }

要应用的函数。

verify
VerifyExpression

用于检查每个参数的有效性的函数。

返回

用于计算表达式的委托。

commonEquals(unknown, unknown)

Equal helper 函数。 比较第一个参数和第二个参数。

static function commonEquals(obj1: unknown, obj2: unknown): boolean

参数

obj1

unknown

要比较的第一个值。

obj2

unknown

要比较的第二个值。

返回

boolean

基于比较的布尔值。

determineFormatAndLocale(unknown[], number, string, string)

static function determineFormatAndLocale(args: unknown[], maxArgsLength: number, format: string, locale: string): { format: string, locale: string }

参数

args

unknown[]

参数数组。

maxArgsLength

number

给定函数的最大长度。

format

string

一个格式字符串。

locale

string

区域设置字符串。

返回

{ format: string, locale: string }

args 参数中的格式和区域设置,否则为区域设置和格式字符串。

determineLocale(unknown[], number, string)

static function determineLocale(args: unknown[], maxArgsLength: number, locale: string): string

参数

args

unknown[]

参数数组。

maxArgsLength

number

给定函数的最大长度。

locale

string

区域设置字符串

返回

string

参数中的最后一项,否则为区域设置字符串。

evaluateChildren(Expression, MemoryInterface, Options, VerifyExpression)

计算表达式子级并返回它们。

static function evaluateChildren(expression: Expression, state: MemoryInterface, options: Options, verify?: VerifyExpression): { args: any[], error: string }

参数

expression
Expression

包含子级的表达式。

state
MemoryInterface

全局状态。

options
Options

评估中使用的选项。

verify
VerifyExpression

用于验证每个子级结果的可选函数。

返回

{ args: any[], error: string }

子值或错误消息的列表。

isNumber(any)

是数字帮助程序函数。

static function isNumber(instance: any): boolean

参数

instance

any

输入。

返回

boolean

如果输入为数字,则为 True。

timestampFormatter(string)

时间戳格式化程序,将 C# 日期/时间转换为day.js格式。

static function timestampFormatter(formatter: string): string

参数

formatter

string

C# 日期/时间格式

返回

string

格式化的日期/时间。

tryAccumulatePath(Expression, MemoryInterface, Options)

用于解析内存路径的状态对象。

static function tryAccumulatePath(expression: Expression, state: MemoryInterface, options: Options): { error: string, left: any, path: string }

参数

expression
Expression

表达式。

state
MemoryInterface

作用域。

options
Options

评估中使用的选项。

返回

{ error: string, left: any, path: string }

返回累积路径,而表达式则无法累积。

validateArityAndAnyType(Expression, number, number, ReturnType)

验证表达式是否具有一定数量的子级,这些子级属于任何受支持的类型。

static function validateArityAndAnyType(expression: Expression, minArity: number, maxArity: number, returnType: ReturnType)

参数

expression
Expression

要验证的表达式。

minArity

number

最小子级数。

maxArity

number

子级的最大数目。

returnType
ReturnType

子级的允许返回类型。 如果子级的返回类型为 Object,则验证将在运行时进行。

validateAtLeastOne(Expression)

验证至少 1 个任何类型的参数。

static function validateAtLeastOne(expression: Expression)

参数

expression
Expression

要验证的表达式。

validateBinary(Expression)

验证是否有两个子级。

static function validateBinary(expression: Expression)

参数

expression
Expression

要验证的表达式。

validateBinaryNumber(Expression)

验证 2 个数值参数。

static function validateBinaryNumber(expression: Expression)

参数

expression
Expression

要验证的表达式。

validateBinaryNumberOrString(Expression)

验证是否有 2 个数值或字符串参数。

static function validateBinaryNumberOrString(expression: Expression)

参数

expression
Expression

要验证的表达式。

validateNumber(Expression)

验证 1 个或多个数值参数。

static function validateNumber(expression: Expression)

参数

expression
Expression

要验证的表达式。

validateOrder(Expression, ReturnType[], ReturnType[])

验证函数的参数数量和类型。

static function validateOrder(expression: Expression, optional: ReturnType[], types: ReturnType[])

参数

expression
Expression

要验证的表达式。

optional

ReturnType[]

按顺序排列的可选类型。

types

ReturnType[]

按顺序排列的预期类型。

validateString(Expression)

验证 1 个或多个字符串参数。

static function validateString(expression: Expression)

参数

expression
Expression

要验证的表达式。

validateTwoOrMoreThanTwoNumbers(Expression)

验证 2 个或 2 个以上的数值参数。

static function validateTwoOrMoreThanTwoNumbers(expression: Expression)

参数

expression
Expression

要验证的表达式。

validateUnary(Expression)

验证是否存在单个参数。

static function validateUnary(expression: Expression)

参数

expression
Expression

要验证的表达式。

validateUnaryBoolean(Expression)

验证是否存在单个布尔参数。

static function validateUnaryBoolean(expression: Expression)

参数

expression
Expression

要验证的表达式。

validateUnaryNumber(Expression)

验证是否存在单个参数。

static function validateUnaryNumber(expression: Expression)

参数

expression
Expression

要验证的表达式。

validateUnaryOrBinaryNumber(Expression)

验证 1 或 2 个数值参数。

static function validateUnaryOrBinaryNumber(expression: Expression)

参数

expression
Expression

要验证的表达式。

validateUnaryOrBinaryString(Expression)

验证是否存在一个或两个字符串参数。

static function validateUnaryOrBinaryString(expression: Expression)

参数

expression
Expression

要验证的表达式。

validateUnaryString(Expression)

验证是否有单个字符串参数。

static function validateUnaryString(expression: Expression)

参数

expression
Expression

要验证的表达式。

verifyBoolean(any, Expression, number)

验证值为布尔值。

static function verifyBoolean(value: any, expression: Expression, _: number): string | undefined

参数

value

any

要检查的值。

expression
Expression

导致值的表达式。

_

number

无函数。

返回

string | undefined

如果无效,则出错或未定义。

verifyContainer(any, Expression, number)

验证值是否包含元素。

static function verifyContainer(value: any, expression: Expression, _: number): string | undefined

参数

value

any

要检查的值。

expression
Expression

导致值的表达式。

_

number

无函数。

返回

string | undefined

如果无效,则出错或未定义。

verifyContainerOrNull(unknown, Expression, number)

验证值是否包含元素或 null。

static function verifyContainerOrNull(value: unknown, expression: Expression, _: number): string | undefined

参数

value

unknown

要检查的值。

expression
Expression

导致值的表达式。

_

number

无函数。

返回

string | undefined

如果无效,则出错或未定义。

verifyInteger(any, Expression, number)

验证值是否为整数。

static function verifyInteger(value: any, expression: Expression, _: number): string | undefined

参数

value

any

要检查的值。

expression
Expression

导致值的表达式。

_

number

无函数。

返回

string | undefined

如果无效,则出错或未定义。

verifyList(any, Expression)

验证值是否为列表。

static function verifyList(value: any, expression: Expression): string | undefined

参数

value

any

要检查的值。

expression
Expression

导致值的表达式。

返回

string | undefined

如果无效,则出错或未定义。

verifyNotNull(any, Expression, number)

验证值是否为 null 或未定义。

static function verifyNotNull(value: any, expression: Expression, _: number): string | undefined

参数

value

any

要检查的值。

expression
Expression

导致值的表达式。

_

number

无函数。

返回

string | undefined

如果有效,则出错或未定义。

verifyNumber(any, Expression, number)

验证值为数值。

static function verifyNumber(value: any, expression: Expression, _: number): string | undefined

参数

value

any

要检查的值。

expression
Expression

导致值的表达式。

_

number

无函数。

返回

string | undefined

如果无效,则出错或未定义。

verifyNumberOrNumericList(any, Expression, number)

验证值为数值。

static function verifyNumberOrNumericList(value: any, expression: Expression, _: number): string | undefined

参数

value

any

要检查的值。

expression
Expression

导致值的表达式。

_

number

无函数。

返回

string | undefined

如果无效,则出错或未定义。

verifyNumberOrString(any, Expression, number)

验证值是否为数字或字符串。

static function verifyNumberOrString(value: any, expression: Expression, _: number): string | undefined

参数

value

any

要检查的值。

expression
Expression

导致值的表达式。

_

number

无函数。

返回

string | undefined

如果无效,则出错或未定义。

verifyNumberOrStringOrNull(any, Expression, number)

验证值是数字或字符串还是 null。

static function verifyNumberOrStringOrNull(value: any, expression: Expression, _: number): string | undefined

参数

value

any

要检查的值。

expression
Expression

导致值的表达式。

_

number

无函数。

返回

string | undefined

如果无效,则出错或未定义。

verifyNumericList(any, Expression, number)

验证值是否为数值列表。

static function verifyNumericList(value: any, expression: Expression, _: number): string | undefined

参数

value

any

要检查的值。

expression
Expression

导致值的表达式。

_

number

无函数。

返回

string | undefined

如果无效,则出错或未定义。

verifyString(any, Expression, number)

验证值是否为字符串。

static function verifyString(value: any, expression: Expression, _: number): string | undefined

参数

value

any

要检查的值。

expression
Expression

导致值的表达式。

_

number

无函数。

返回

string | undefined

如果无效,则出错或未定义。

verifyStringOrNull(any, Expression, number)

验证对象既不是字符串也不是 null。

static function verifyStringOrNull(value: any, expression: Expression, _: number): string | undefined

参数

value

any

要检查的值。

expression
Expression

导致值的表达式。

_

number

无函数。

返回

string | undefined

如果无效,则出错或未定义。