2using System.Collections.Generic;
3using System.Threading.Tasks;
35 LinkedList<IElement>
Elements =
new LinkedList<IElement>();
53 LinkedList<IElement>
Elements =
new LinkedList<IElement>();
82 if (!(CheckAgainst is
ISet Set))
85 if (!(Size =
Set.
Size).HasValue)
Base class for all types of sets.
virtual ? int Size
Size of set, if finite and known, otherwise null is returned.
override ICollection< IElement > ChildElements
An enumeration of child elements. If the element is a scalar, this property will return null.
Class managing a script expression.
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 list of elements.
bool isAsync
If any of the elements are asynchronous
ScriptNode[] Elements
Elements.
SetDefinition(ScriptNode[] Elements, int Start, int Length, Expression Expression)
Creates a set.
override PatternMatchResult PatternMatch(IElement CheckAgainst, Dictionary< string, IElement > AlreadyFound)
Performs a pattern match operation.
override IElement Evaluate(Variables Variables)
Evaluates the node, using the variables provided in the Variables collection.
override async Task< IElement > EvaluateAsync(Variables Variables)
Evaluates the node, using the variables provided in the Variables collection.
static IElement Encapsulate(ICollection< IElement > Elements)
Encapsulates the elements of a set.
Basic interface for all types of elements.
Basic interface for all types of sets.
PatternMatchResult
Status result of a pattern matching operation.