Partager via


Clause class

Expression de forme normale canonique.

Extends

Constructeurs

Clause(Clause | Expression | Expression[])

Initialise une nouvelle instance de la classe Clause.

Propriétés

anyBindings

Obtient ou définit le dictionnaire anyBinding.

returnType

Résultat attendu de l’évaluation de l’expression.

subsumed

Obtient ou définit si la clause est sous-énumérée.

type

Type d’expression.

Propriétés héritées

children

Expressions enfants.

evaluator

Évaluateur d’expression.

functions

Dictionnaire de fonction => ExpressionEvaluator. Il s’agit de toutes les fonctions disponibles, vous pouvez y ajouter des fonctions personnalisées, mais vous ne pouvez pas remplacer les fonctions intégrées. Si vous effacez le dictionnaire, il sera réinitialisé aux fonctions intégrées.

Méthodes

matches(Clause, MemoryInterface | any)

Détermine si le Clause actuel correspond à un autre Clause.

relationship(Clause, PredicateComparers)

Compare le Clause actuel à un autre Clause.

splitIgnores()

Fractionne les expressions enfants ignorées.

toString(string[], number)

Obtient une chaîne qui représente la clause actuelle.

Méthodes héritées

andExpression(Expression[])

Construisez et validez une expression And.

deepEquals(Expression)

Effectuez une égalité profonde entre les expressions.

equalsExpression(Expression[])

Construisez et validez une expression Equals.

lambaExpression(EvaluateExpressionDelegate)

Construire une expression à partir d’un EvaluateExpressionDelegate

lambda((arg0: any) => any)

Construisez une expression à partir d’une expression lamba sur l’état. Les exceptions sont interceptées et exposées sous forme de chaîne d’erreur.

lookup(string)

Recherchez un ExpressionEvaluator fonction par nom.

makeExpression(string, ExpressionEvaluator, Expression[])

Créez une expression et validez-la.

notExpression(Expression)

Construisez et validez une expression Not.

orExpression(Expression[])

Construisez et validez une expression Or.

parse(string, EvaluatorLookup)

Analysez une chaîne d’expression dans un objet Expression.

references()

Retournez les chemins d’accès de référence statiques à la mémoire. Retourne tous les chemins statiques en mémoire. S’il existe un index d’élément calculé, le chemin d’accès est arrêté là, mais vous pouvez également obtenir d’autres chemins à partir de la partie calculée.

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

Fonction de marche pour identifier les références de mémoire statique dans une expression.

setPathToValue(Expression, any)

Construisez et validez une expression de propriété Set sur une expression de valeur.

tryEvaluate(MemoryInterface | any, Options)

Évaluez l’expression.

validate()

Valider l’expression immédiate.

validateTree()

Validez de manière récursive l’arborescence d’expressions.

Détails du constructeur

Clause(Clause | Expression | Expression[])

Initialise une nouvelle instance de la classe Clause.

new Clause(clauseOrExpression?: Clause | Expression | Expression[])

Paramètres

clauseOrExpression

Clause | Expression | Expression[]

Clause, expression ou tableau d’expressions pour initialiser un Clause.

Détails de la propriété

anyBindings

Obtient ou définit le dictionnaire anyBinding.

anyBindings: Map<string, string> = new Map<string, string>()

Valeur de propriété

Map<string, string>

returnType

Résultat attendu de l’évaluation de l’expression.

ReturnType returnType

Valeur de propriété

Résultat attendu de l’évaluation de l’expression.

subsumed

Obtient ou définit si la clause est sous-énumérée.

subsumed: boolean = false

Valeur de propriété

boolean

type

Type d’expression.

string type

Valeur de propriété

string

Type de l’expression.

Détails de la propriété héritée

children

Expressions enfants.

children: Expression[]

Valeur de propriété

héritée deExpression.children

evaluator

Évaluateur d’expression.

evaluator: ExpressionEvaluator

Valeur de propriété

héritée deExpression.évaluateur

functions

Dictionnaire de fonction => ExpressionEvaluator. Il s’agit de toutes les fonctions disponibles, vous pouvez y ajouter des fonctions personnalisées, mais vous ne pouvez pas remplacer les fonctions intégrées. Si vous effacez le dictionnaire, il sera réinitialisé aux fonctions intégrées.

static functions: FunctionTable = new FunctionTable()

Valeur de propriété

héritée deExpression.functions

Détails de la méthode

matches(Clause, MemoryInterface | any)

Détermine si le Clause actuel correspond à un autre Clause.

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

Paramètres

clause
Clause

L’autre instance Clause à comparer.

memory

MemoryInterface | any

Étendue de la recherche de variables.

Retours

boolean

Valeur booléenne indiquant si les deux clauses sont des correspondances.

relationship(Clause, PredicateComparers)

Compare le Clause actuel à un autre Clause.

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

Paramètres

other
Clause

L’autre Clause à comparer.

comparers
PredicateComparers

Comparateur, qui est un dictionnaire de PredicateComparer avec des clés de chaîne.

Retours

Valeur RelationshipType entre deux instances Clause.

splitIgnores()

Fractionne les expressions enfants ignorées.

function splitIgnores()

toString(string[], number)

Obtient une chaîne qui représente la clause actuelle.

function toString(builder: string[], indent: number): string

Paramètres

builder

string[]

Tableau de chaînes pour générer la chaîne de clause.

indent

number

Un entier représente le nombre d’espaces au début d’une ligne.

Retours

string

Chaîne qui représente la clause actuelle.

Détails de la méthode héritée

andExpression(Expression[])

Construisez et validez une expression And.

static function andExpression(children: Expression[]): Expression

Paramètres

children

Expression[]

Clauses enfants.

Retours

Nouvelle expression.

héritée deExpression.andExpression

deepEquals(Expression)

Effectuez une égalité profonde entre les expressions.

function deepEquals(other: Expression): boolean

Paramètres

other
Expression

Autre expression.

Retours

boolean

True si les expressions sont identiques.

héritée deExpression.deepEquals

equalsExpression(Expression[])

Construisez et validez une expression Equals.

static function equalsExpression(children: Expression[]): Expression

Paramètres

children

Expression[]

Clauses enfants.

Retours

Nouvelle expression.

héritée deExpression.equalsExpression

lambaExpression(EvaluateExpressionDelegate)

Construire une expression à partir d’un EvaluateExpressionDelegate

static function lambaExpression(func: EvaluateExpressionDelegate): Expression

Paramètres

func
EvaluateExpressionDelegate

Fonction à partir de qui créer une expression.

Retours

Nouvelle expression.

héritée deExpression.lambaExpression

lambda((arg0: any) => any)

Construisez une expression à partir d’une expression lamba sur l’état. Les exceptions sont interceptées et exposées sous forme de chaîne d’erreur.

static function lambda(func: (arg0: any) => any): Expression

Paramètres

func

(arg0: any) => any

expression ambda à évaluer.

Retours

Nouvelle expression.

héritée deexpression.lambda

lookup(string)

Recherchez un ExpressionEvaluator fonction par nom.

static function lookup(functionName: string): ExpressionEvaluator

Paramètres

functionName

string

Nom de la fonction à rechercher.

Retours

Un ExpressionEvaluator correspondant au nom de la fonction.

héritée deexpression.lookup

makeExpression(string, ExpressionEvaluator, Expression[])

Créez une expression et validez-la.

static function makeExpression(type: string, evaluator: ExpressionEvaluator, children: Expression[]): Expression

Paramètres

type

string

Type d’expression de ExpressionType.

evaluator
ExpressionEvaluator

Informations sur la validation et l’évaluation de l’expression.

children

Expression[]

Expressions enfants.

Retours

Nouvelle expression.

héritée deExpression.makeExpression

notExpression(Expression)

Construisez et validez une expression Not.

static function notExpression(child: Expression): Expression

Paramètres

child
Expression

Clauses enfants.

Retours

Nouvelle expression.

héritée deExpression.notExpression

orExpression(Expression[])

Construisez et validez une expression Or.

static function orExpression(children: Expression[]): Expression

Paramètres

children

Expression[]

Clauses enfants.

Retours

Nouvelle expression.

héritée deExpression.orExpression

parse(string, EvaluatorLookup)

Analysez une chaîne d’expression dans un objet Expression.

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

Paramètres

expression

string

Chaîne d’expression.

lookup
EvaluatorLookup

Optionnel. ÉvaluateurLookup recherche de fonction lors de l’analyse de l’expression. La valeur par défaut est Expression.lookup qui utilise table Expression.functions.

Retours

Objet expression.

héritée deExpression.parse

references()

Retournez les chemins d’accès de référence statiques à la mémoire. Retourne tous les chemins statiques en mémoire. S’il existe un index d’élément calculé, le chemin d’accès est arrêté là, mais vous pouvez également obtenir d’autres chemins à partir de la partie calculée.

function references(): string[]

Retours

string[]

Liste des chemins d’accès de référence statique.

héritée deExpression.references

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

Fonction de marche pour identifier les références de mémoire statique dans une expression.

function referenceWalk(expression: Expression, extension?: (arg0: Expression) => boolean): { path: string, refs: Set<string> }

Paramètres

expression
Expression

Expression à analyser.

extension

(arg0: Expression) => boolean

S’il est présent, appelé pour remplacer la recherche pour des éléments tels que l’extension de modèle.

Retours

{ path: string, refs: Set<string> }

Chemin d’accès de l’expression.

héritée deExpression.referenceWalk

setPathToValue(Expression, any)

Construisez et validez une expression de propriété Set sur une expression de valeur.

static function setPathToValue(property: Expression, value: any): Expression

Paramètres

property
Expression

expression de propriété.

value

any

expression de valeur.

Retours

Nouvelle expression.

héritée deExpression.setPathToValue

tryEvaluate(MemoryInterface | any, Options)

Évaluez l’expression.

function tryEvaluate(state: MemoryInterface | any, options: Options): ValueWithError

Paramètres

state

MemoryInterface | any

État global sur lequel évaluer les expressions d’accesseur. Il peut s’agir d’un dictionnaire, sinon la réflexion est utilisée pour accéder à la propriété, puis à l’indexeur.

options
Options

Options utilisées dans l’évaluation.

Retours

Valeur calculée et chaîne d’erreur. Si la chaîne n’est pas null, une erreur d’évaluation s’est produite.

héritée deExpression.tryEvaluate

validate()

Valider l’expression immédiate.

function validate()

héritée deExpression.validate

validateTree()

Validez de manière récursive l’arborescence d’expressions.

function validateTree()

héritée deExpression.validateTree