Compartir a través de


Clause class

Expresión de forma normal canónica.

Extends

Constructores

Clause(Clause | Expression | Expression[])

Inicializa una nueva instancia de la clase Clause.

Propiedades

anyBindings

Obtiene o establece el diccionario anyBinding.

returnType

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, MemoryInterface | any)

Determina si el Clause actual coincide con otro Clause.

relationship(Clause, PredicateComparers)

Compara el Clause actual con otro Clause.

splitIgnores()

Divide las expresiones secundarias omitidas.

toString(string[], number)

Obtiene una cadena que representa la cláusula actual.

Métodos heredados

andExpression(Expression[])

Construya y valide una expresión And.

deepEquals(Expression)

Realice una igualdad profunda entre expresiones.

equalsExpression(Expression[])

Construya y valide una expresión Equals.

lambaExpression(EvaluateExpressionDelegate)

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.

makeExpression(string, ExpressionEvaluator, Expression[])

Realice una expresión y validela.

notExpression(Expression)

Construya y valide una expresión Not.

orExpression(Expression[])

Construya y valide una expresión Or.

parse(string, EvaluatorLookup)

Analice una cadena de expresión en un objeto Expresión.

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.

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

Función walking para identificar referencias de memoria estáticas en una expresión.

setPathToValue(Expression, any)

Construya y valide una expresión set a property expression en una expresión de valor.

tryEvaluate(MemoryInterface | any, Options)

Evalúe la expresión.

validate()

Valide la expresión inmediata.

validateTree()

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

Expresiones secundarias.

children: Expression[]

Valor de propiedad

heredado de Expression.children

evaluator

Evaluador de expresiones.

evaluator: ExpressionEvaluator

Valor de propiedad

heredado del expression.evaluador de

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 Clause actual coincide con otro Clause.

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

Parámetros

clause
Clause

La otra instancia de Clause 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 Clause actual 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 PredicateComparer con claves de cadena.

Devoluciones

Valor de RelationshipType entre dos instancias de Clause.

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

Expression[]

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

Expression[]

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

func
EvaluateExpressionDelegate

Función a partir de la que se va a crear una expresión.

Devoluciones

Nueva expresión.

heredado 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

Un 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

Expression[]

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

Expression[]

Cláusulas secundarias.

Devoluciones

Nueva expresión.

heredado deexpression.orExpression

parse(string, EvaluatorLookup)

Analice una cadena de expresión en un objeto Expresión.

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

Parámetros

expression

string

Cadena de expresión.

lookup
EvaluatorLookup

Opcional. búsqueda de función evaluadorlookup al analizar la expresión. El valor predeterminado es expression.lookup que usa 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.

se hereda 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.

se hereda deexpression.tryEvaluate

validate()

Valide la expresión inmediata.

function validate()

heredado deexpression.validate

validateTree()

Valide recursivamente el árbol de expresiones.

function validateTree()

heredado deexpression.validateTree