1using System.Collections.Generic;
2using System.Threading.Tasks;
38 if (Left.Equals(Right))
57 if (Left.Equals(Right))
78 i = S.Compare(LeftConstant.Constant, CheckAgainst);
87 i = S.Compare(CheckAgainst, RightConstant.Constant);
95 (AlreadyFound.TryGetValue(LeftReference.VariableName, out
IElement Value) ||
98 i = S.Compare(Value, CheckAgainst);
106 (AlreadyFound.TryGetValue(RightReference.VariableName, out Value) ||
109 i = S.Compare(CheckAgainst, Value);
Class managing a script expression.
static bool TryGetConstant(string Name, Variables Variables, out IElement ValueElement)
Tries to get a constant value, given its name.
Base class for all binary operators.
ScriptNode right
Right operand.
ScriptNode left
Left operand.
bool isAsync
If subtree is asynchroneous.
Represents a constant element value.
Base class for all nodes in a parsed script tree.
int Length
Length of expression covered by node.
virtual PatternMatchResult PatternMatch(IElement CheckAgainst, Dictionary< string, IElement > AlreadyFound)
Performs a pattern match operation.
int Start
Start position in script expression.
abstract IElement Evaluate(Variables Variables)
Evaluates the node, using the variables provided in the Variables collection. This method should be ...
virtual Task< IElement > EvaluateAsync(Variables Variables)
Evaluates the node, using the variables provided in the Variables collection. This method should be ...
Represents a variable reference.
static readonly BooleanValue False
Constant false value.
static readonly BooleanValue True
Constant true value.
override IElement Evaluate(Variables Variables)
Evaluates the node, using the variables provided in the Variables collection.
override PatternMatchResult PatternMatch(IElement CheckAgainst, Dictionary< string, IElement > AlreadyFound)
Performs a pattern match operation.
override async Task< IElement > EvaluateAsync(Variables Variables)
Evaluates the node, using the variables provided in the Variables collection.
NotEqualTo(ScriptNode Left, ScriptNode Right, int Start, int Length, Expression Expression)
Not Equal To.
Basic interface for all types of elements.
ISet AssociatedSet
Associated Set.
Basic interface for ordered sets.
PatternMatchResult
Status result of a pattern matching operation.