Clause class
Expresión de forma normal canónica.
- Extends
Constructores
| Clause(Clause | Expression | Expression[]) | Inicializa una nueva instancia de la clase |
Propiedades
| any |
Obtiene o establece el diccionario anyBinding. |
| return |
Resultado esperado de evaluar la expresión. |
| subsumed | Obtiene o establece si la cláusula está subsumada. |
| type | Tipo de expresión. |
Propiedades heredadas
| children | Expresiones secundarias. |
| evaluator | Evaluador de expresiones. |
| functions | Diccionario de función => ExpressionEvaluator. Se trata de todas las funciones disponibles, puede agregarle funciones personalizadas, pero no puede reemplazar las funciones integradas. Si borra el diccionario, se restablecerá a las funciones integradas. |
Métodos
| matches(Clause, Memory |
Determina si el objeto actual |
| relationship(Clause, Predicate |
Compara el actual |
| split |
Divide las expresiones secundarias omitidas. |
| to |
Obtiene una cadena que representa la cláusula actual. |
Métodos heredados
| and |
Construya y valide una expresión And. |
| deep |
Realice una igualdad profunda entre expresiones. |
| equals |
Construya y valide una expresión Equals. |
| lamba |
Construir una expresión a partir de evaluateExpressionDelegate |
| lambda((arg0: any) => any) | Construya una expresión a partir de una expresión de lamba sobre el estado. Las excepciones se detectarán y se mostrarán como una cadena de error. |
| lookup(string) | Busque una función ExpressionEvaluator por nombre. |
| make |
Realice una expresión y validela. |
| not |
Construya y valide una expresión Not. |
| or |
Construya y valide una expresión Or. |
| parse(string, Evaluator |
Analizar una cadena de expresión en un objeto Expression . |
| references() | Devuelve las rutas de acceso de referencia estáticas a la memoria. Devuelve todas las rutas de acceso estáticas a la memoria. Si hay un índice de elemento calculado, la ruta de acceso se termina allí, pero también puede obtener otras rutas de acceso de la parte calculada. |
| reference |
Función walking para identificar referencias de memoria estáticas en una expresión. |
| set |
Construya y valide una expresión set a property expression en una expresión de valor. |
| try |
Evalúe la expresión. |
| validate() | Valide la expresión inmediata. |
| validate |
Valide recursivamente el árbol de expresiones. |
Detalles del constructor
Clause(Clause | Expression | Expression[])
Inicializa una nueva instancia de la clase Clause.
new Clause(clauseOrExpression?: Clause | Expression | Expression[])
Parámetros
- clauseOrExpression
-
Clause | Expression | Expression[]
Cláusula, expresión o matriz de expresiones para inicializar un Clause.
Detalles de las propiedades
anyBindings
Obtiene o establece el diccionario anyBinding.
anyBindings: Map<string, string> = new Map<string, string>()
Valor de propiedad
Map<string, string>
returnType
Resultado esperado de evaluar la expresión.
ReturnType returnType
Valor de propiedad
Resultado esperado de evaluar la expresión.
subsumed
Obtiene o establece si la cláusula está subsumada.
subsumed: boolean = false
Valor de propiedad
boolean
type
Tipo de expresión.
string type
Valor de propiedad
string
Tipo de la expresión.
Detalles de las propiedades heredadas
children
evaluator
Evaluador de expresiones.
evaluator: ExpressionEvaluator
Valor de propiedad
Heredado deExpression.evaluador
functions
Diccionario de función => ExpressionEvaluator. Se trata de todas las funciones disponibles, puede agregarle funciones personalizadas, pero no puede reemplazar las funciones integradas. Si borra el diccionario, se restablecerá a las funciones integradas.
static functions: FunctionTable = new FunctionTable()
Valor de propiedad
Heredado deExpression.functions
Detalles del método
matches(Clause, MemoryInterface | any)
Determina si el objeto actual Clause coincide con otro Clause.
function matches(clause: Clause, memory: MemoryInterface | any): boolean
Parámetros
- clause
- Clause
La otra Clause instancia con la que se va a comparar.
- memory
-
MemoryInterface | any
Ámbito para buscar variables.
Devoluciones
boolean
Valor booleano que indica si las dos cláusulas son coincidencias.
relationship(Clause, PredicateComparers)
Compara el actual Clause con otro Clause.
function relationship(other: Clause, comparers: PredicateComparers): RelationshipType
Parámetros
- other
- Clause
El otro Clause que se va a comparar.
- comparers
- PredicateComparers
Comparador, que es un diccionario de con claves de PredicateComparer cadena.
Devoluciones
Valor RelationshipType entre dos Clause instancias.
splitIgnores()
Divide las expresiones secundarias omitidas.
function splitIgnores()
toString(string[], number)
Obtiene una cadena que representa la cláusula actual.
function toString(builder: string[], indent: number): string
Parámetros
- builder
-
string[]
Matriz de cadena para compilar la cadena de la cláusula .
- indent
-
number
Un entero representa el número de espacios al principio de una línea.
Devoluciones
string
Cadena que representa la cláusula actual.
Detalles de los métodos heredados
andExpression(Expression[])
Construya y valide una expresión And.
static function andExpression(children: Expression[]): Expression
Parámetros
- children
Cláusulas secundarias.
Devoluciones
Nueva expresión.
Heredado deExpression.andExpression
deepEquals(Expression)
Realice una igualdad profunda entre expresiones.
function deepEquals(other: Expression): boolean
Parámetros
- other
- Expression
Otra expresión.
Devoluciones
boolean
True si las expresiones son iguales.
Heredado deExpression.deepEquals
equalsExpression(Expression[])
Construya y valide una expresión Equals.
static function equalsExpression(children: Expression[]): Expression
Parámetros
- children
Cláusulas secundarias.
Devoluciones
Nueva expresión.
Heredado deExpression.equalsExpression
lambaExpression(EvaluateExpressionDelegate)
Construir una expresión a partir de evaluateExpressionDelegate
static function lambaExpression(func: EvaluateExpressionDelegate): Expression
Parámetros
Función a partir de la que se va a crear una expresión.
Devoluciones
Nueva expresión.
Se hereda deExpression.lambaExpression
lambda((arg0: any) => any)
Construya una expresión a partir de una expresión de lamba sobre el estado. Las excepciones se detectarán y se mostrarán como una cadena de error.
static function lambda(func: (arg0: any) => any): Expression
Parámetros
- func
-
(arg0: any) => any
expresión ambda que se va a evaluar.
Devoluciones
Nueva expresión.
Heredado deExpression.lambda
lookup(string)
Busque una función ExpressionEvaluator por nombre.
static function lookup(functionName: string): ExpressionEvaluator
Parámetros
- functionName
-
string
Nombre de la función que se va a buscar.
Devoluciones
ExpressionEvaluator correspondiente al nombre de la función.
Heredado deExpression.lookup
makeExpression(string, ExpressionEvaluator, Expression[])
Realice una expresión y validela.
static function makeExpression(type: string, evaluator: ExpressionEvaluator, children: Expression[]): Expression
Parámetros
- type
-
string
Tipo de expresión de ExpressionType.
- evaluator
- ExpressionEvaluator
Información sobre cómo validar y evaluar la expresión.
- children
Expresiones secundarias.
Devoluciones
Nueva expresión.
Heredado deExpression.makeExpression
notExpression(Expression)
Construya y valide una expresión Not.
static function notExpression(child: Expression): Expression
Parámetros
- child
- Expression
Cláusulas secundarias.
Devoluciones
Nueva expresión.
Heredado deExpression.notExpression
orExpression(Expression[])
Construya y valide una expresión Or.
static function orExpression(children: Expression[]): Expression
Parámetros
- children
Cláusulas secundarias.
Devoluciones
Nueva expresión.
Heredado deExpression.orExpression
parse(string, EvaluatorLookup)
Analizar una cadena de expresión en un objeto Expression .
static function parse(expression: string, lookup?: EvaluatorLookup): Expression
Parámetros
- expression
-
string
Cadena de expresión.
- lookup
- EvaluatorLookup
Opcional. Búsqueda de la función EvaluadorLookup al analizar la expresión. El valor predeterminado es Expression.lookup , que usa la tabla Expression.functions .
Devoluciones
Objeto de expresión.
Heredado deExpression.parse
references()
Devuelve las rutas de acceso de referencia estáticas a la memoria. Devuelve todas las rutas de acceso estáticas a la memoria. Si hay un índice de elemento calculado, la ruta de acceso se termina allí, pero también puede obtener otras rutas de acceso de la parte calculada.
function references(): string[]
Devoluciones
string[]
Lista de las rutas de acceso de referencia estáticas.
Heredado deExpression.references
referenceWalk(Expression, (arg0: Expression) => boolean)
Función walking para identificar referencias de memoria estáticas en una expresión.
function referenceWalk(expression: Expression, extension?: (arg0: Expression) => boolean): { path: string, refs: Set<string> }
Parámetros
- expression
- Expression
Expresión que se va a analizar.
- extension
-
(arg0: Expression) => boolean
Si está presente, se llama para invalidar la búsqueda de elementos como la expansión de plantillas.
Devoluciones
{ path: string, refs: Set<string> }
Ruta de acceso de descriptor de acceso de la expresión.
Heredado deExpression.referenceWalk
setPathToValue(Expression, any)
Construya y valide una expresión set a property expression en una expresión de valor.
static function setPathToValue(property: Expression, value: any): Expression
Parámetros
- property
- Expression
expresión de propiedad.
- value
-
any
expresión value.
Devoluciones
Nueva expresión.
Heredado deExpression.setPathToValue
tryEvaluate(MemoryInterface | any, Options)
Evalúe la expresión.
function tryEvaluate(state: MemoryInterface | any, options: Options): ValueWithError
Parámetros
- state
-
MemoryInterface | any
Estado global en el que se evaluarán las expresiones de descriptor de acceso. Puede ser Dictionary; de lo contrario, la reflexión se usa para tener acceso a la propiedad y, a continuación, al indexador.
- options
- Options
Opciones usadas en la evaluación.
Devoluciones
Valor calculado y una cadena de error. Si la cadena no es null, se produjo un error de evaluación.
Heredado deExpression.tryEvaluate
validate()
validateTree()
Valide recursivamente el árbol de expresiones.
function validateTree()
Heredado deExpression.validateTree