Clause class
Uma expressão de forma normal canônica.
- Extends
Construtores
Clause(Clause | Expression | Expression[]) | Inicializa uma nova instância da classe |
Propriedades
any |
Obtém ou define o dicionário anyBinding. |
return |
Resultado esperado da avaliação da expressão. |
subsumed | Obtém ou define se a cláusula é subsumida. |
type | Tipo de expressão. |
Propriedades herdadas
children | Expressões infantis. |
evaluator | Avaliador de expressão. |
functions | Dicionário de função => ExpressionEvaluator. Essas são todas as funções disponíveis, você pode adicionar funções personalizadas a ela, mas não pode substituir funções internas. Se você limpar o dicionário, ele será redefinido para as funções internas. |
Métodos
matches(Clause, Memory |
Determina se o atual |
relationship(Clause, Predicate |
Compara o atual |
split |
Divide expressões filho ignoradas. |
to |
Obtém uma cadeia de caracteres que representa a cláusula atual. |
Métodos herdados
and |
Construa e valide uma expressão And. |
deep |
Faça uma igualdade profunda entre expressões. |
equals |
Construa e valide uma expressão Equals. |
lamba |
Construir uma expressão de um EvaluateExpressionDelegate |
lambda((arg0: any) => any) | Construa uma expressão de uma expressão lamba sobre o estado. As exceções serão capturadas e exibidas como uma cadeia de caracteres de erro. |
lookup(string) | Pesquise uma função ExpressionEvaluator por nome. |
make |
Faça uma expressão e valide-a. |
not |
Construa e valide uma expressão Not. |
or |
Construa e valide uma expressão Or. |
parse(string, Evaluator |
Analise uma cadeia de caracteres de expressão em um objeto Expression . |
references() | Retornar os caminhos de referência estáticos para a memória. Retornar todos os caminhos estáticos para a memória. Se houver um índice de elemento computado, o caminho será encerrado lá, mas você também poderá obter outros caminhos da parte computada. |
reference |
Função walking para identificar referências de memória estática em uma expressão. |
set |
Construa e valide um Definir uma expressão de propriedade para uma expressão de valor. |
try |
Avalie a expressão. |
validate() | Validar expressão imediata. |
validate |
Valide recursivamente a árvore de expressão. |
Detalhes do construtor
Clause(Clause | Expression | Expression[])
Inicializa uma nova instância da classe Clause
.
new Clause(clauseOrExpression?: Clause | Expression | Expression[])
Parâmetros
- clauseOrExpression
-
Clause | Expression | Expression[]
Uma cláusula, uma expressão ou uma matriz de expressões para inicializar um Clause
.
Detalhes da propriedade
anyBindings
Obtém ou define o dicionário anyBinding.
anyBindings: Map<string, string> = new Map<string, string>()
Valor da propriedade
Map<string, string>
returnType
Resultado esperado da avaliação da expressão.
ReturnType returnType
Valor da propriedade
O resultado esperado da avaliação da expressão.
subsumed
Obtém ou define se a cláusula é subsumida.
subsumed: boolean = false
Valor da propriedade
boolean
type
Tipo de expressão.
string type
Valor da propriedade
string
O tipo de expressão.
Detalhes das propriedades herdadas
children
evaluator
Avaliador de expressão.
evaluator: ExpressionEvaluator
Valor da propriedade
Herdado deExpression.evaluator
functions
Dicionário de função => ExpressionEvaluator. Essas são todas as funções disponíveis, você pode adicionar funções personalizadas a ela, mas não pode substituir funções internas. Se você limpar o dicionário, ele será redefinido para as funções internas.
static functions: FunctionTable = new FunctionTable()
Valor da propriedade
Herdado deExpression.functions
Detalhes do método
matches(Clause, MemoryInterface | any)
Determina se o atual Clause
corresponde a outro Clause
.
function matches(clause: Clause, memory: MemoryInterface | any): boolean
Parâmetros
- clause
- Clause
A outra Clause
instância com a qual comparar.
- memory
-
MemoryInterface | any
O escopo para procurar variáveis.
Retornos
boolean
Um valor booliano que indica se as duas cláusulas são correspondentes.
relationship(Clause, PredicateComparers)
Compara o atual Clause
com outro Clause
.
function relationship(other: Clause, comparers: PredicateComparers): RelationshipType
Parâmetros
- other
- Clause
O outro Clause
a ser comparado.
- comparers
- PredicateComparers
Um comparador, que é um dicionário de com chaves de cadeia de PredicateComparer
caracteres.
Retornos
Um RelationshipType
valor entre duas Clause
instâncias.
splitIgnores()
Divide expressões filho ignoradas.
function splitIgnores()
toString(string[], number)
Obtém uma cadeia de caracteres que representa a cláusula atual.
function toString(builder: string[], indent: number): string
Parâmetros
- builder
-
string[]
Uma matriz de cadeia de caracteres para criar a cadeia de caracteres da cláusula .
- indent
-
number
Um inteiro representa o número de espaços no início de uma linha.
Retornos
string
Uma cadeia de caracteres que representa a cláusula atual.
Detalhes do método herdado
andExpression(Expression[])
Construa e valide uma expressão And.
static function andExpression(children: Expression[]): Expression
Parâmetros
- children
Cláusulas filho.
Retornos
Nova expressão.
Herdado deExpression.andExpression
deepEquals(Expression)
Faça uma igualdade profunda entre expressões.
function deepEquals(other: Expression): boolean
Parâmetros
- other
- Expression
Outra expressão.
Retornos
boolean
True se as expressões forem as mesmas.
Herdado deExpression.deepEquals
equalsExpression(Expression[])
Construa e valide uma expressão Equals.
static function equalsExpression(children: Expression[]): Expression
Parâmetros
- children
Cláusulas filho.
Retornos
Nova expressão.
Herdado deExpression.equalsExpression
lambaExpression(EvaluateExpressionDelegate)
Construir uma expressão de um EvaluateExpressionDelegate
static function lambaExpression(func: EvaluateExpressionDelegate): Expression
Parâmetros
Função da qual criar uma expressão.
Retornos
A nova expressão.
Herdado deExpression.lambaExpression
lambda((arg0: any) => any)
Construa uma expressão de uma expressão lamba sobre o estado. As exceções serão capturadas e exibidas como uma cadeia de caracteres de erro.
static function lambda(func: (arg0: any) => any): Expression
Parâmetros
- func
-
(arg0: any) => any
expressão ambda a ser avaliada.
Retornos
Nova expressão.
Herdado deExpression.lambda
lookup(string)
Pesquise uma função ExpressionEvaluator por nome.
static function lookup(functionName: string): ExpressionEvaluator
Parâmetros
- functionName
-
string
Nome da função a ser pesquisada.
Retornos
Um ExpressionEvaluator correspondente ao nome da função.
Herdado deExpression.lookup
makeExpression(string, ExpressionEvaluator, Expression[])
Faça uma expressão e valide-a.
static function makeExpression(type: string, evaluator: ExpressionEvaluator, children: Expression[]): Expression
Parâmetros
- type
-
string
Tipo de expressão de ExpressionType.
- evaluator
- ExpressionEvaluator
Informações sobre como validar e avaliar a expressão.
- children
Expressões filho.
Retornos
A nova expressão.
Herdado deExpression.makeExpression
notExpression(Expression)
Construa e valide uma expressão Not.
static function notExpression(child: Expression): Expression
Parâmetros
- child
- Expression
Cláusulas filho.
Retornos
Nova expressão.
Herdado deExpression.notExpression
orExpression(Expression[])
Construa e valide uma expressão Or.
static function orExpression(children: Expression[]): Expression
Parâmetros
- children
Cláusulas filho.
Retornos
Nova expressão.
Herdado deExpression.orExpression
parse(string, EvaluatorLookup)
Analise uma cadeia de caracteres de expressão em um objeto Expression .
static function parse(expression: string, lookup?: EvaluatorLookup): Expression
Parâmetros
- expression
-
string
Cadeia de caracteres de expressão.
- lookup
- EvaluatorLookup
Opcional. Pesquisa da função EvaluatorLookup ao analisar a expressão. O padrão é Expression.lookup , que usa a tabela Expression.functions .
Retornos
O objeto de expressão.
Herdado deExpression.parse
references()
Retornar os caminhos de referência estáticos para a memória. Retornar todos os caminhos estáticos para a memória. Se houver um índice de elemento computado, o caminho será encerrado lá, mas você também poderá obter outros caminhos da parte computada.
function references(): string[]
Retornos
string[]
Lista dos caminhos de referência estáticos.
Herdado deExpression.references
referenceWalk(Expression, (arg0: Expression) => boolean)
Função walking para identificar referências de memória estática em uma expressão.
function referenceWalk(expression: Expression, extension?: (arg0: Expression) => boolean): { path: string, refs: Set<string> }
Parâmetros
- expression
- Expression
Expressão a ser analisada.
- extension
-
(arg0: Expression) => boolean
Se estiver presente, chamado para substituir a pesquisa de itens como expansão de modelo.
Retornos
{ path: string, refs: Set<string> }
Caminho de expressão do acessador.
Herdado deExpression.referenceWalk
setPathToValue(Expression, any)
Construa e valide um Definir uma expressão de propriedade para uma expressão de valor.
static function setPathToValue(property: Expression, value: any): Expression
Parâmetros
- property
- Expression
expressão de propriedade.
- value
-
any
expressão value.
Retornos
Nova expressão.
Herdado deExpression.setPathToValue
tryEvaluate(MemoryInterface | any, Options)
Avalie a expressão.
function tryEvaluate(state: MemoryInterface | any, options: Options): ValueWithError
Parâmetros
- state
-
MemoryInterface | any
Estado global em que as expressões do acessador serão avaliadas. Pode ser Dicionário, caso contrário, reflexão é usada para acessar a propriedade e, em seguida, indexador.
- options
- Options
Opções usadas na avaliação.
Retornos
Valor computado e uma cadeia de caracteres de erro. Se a cadeia de caracteres não for nula, houve um erro de avaliação.
Herdado deExpression.tryEvaluate
validate()
validateTree()
Valide recursivamente a árvore de expressão.
function validateTree()
Herdado deExpression.validateTree