2using System.Collections.Generic;
3using System.Threading.Tasks;
64 if (Enumerator is
null)
70 private static readonly Dictionary<Type, IPropertyEnumerator> enumerators =
new Dictionary<Type, IPropertyEnumerator>();
84 enumerators[T] = Best;
Static class that dynamically manages types and interfaces available in the runtime environment.
Class managing a script expression.
Extract the properties of a type or an object.
override bool IsAsynchronous
If the node (or its decendants) include asynchronous evaluation. Asynchronous nodes should be evaluat...
override IElement Evaluate(IElement Argument, Variables Variables)
Evaluates the function.
override string FunctionName
Name of the function
override async Task< IElement > EvaluateAsync(Variables Variables)
Evaluates the node, using the variables provided in the Variables collection.
Properties(ScriptNode Argument, int Start, int Length, Expression Expression)
Extract the properties of a type or an object.
override IElement Evaluate(Variables Variables)
Evaluates the node, using the variables provided in the Variables collection.
Base class for funcions of one variable.
ScriptNode Argument
Function argument.
Base class for all nodes in a parsed script tree.
int Length
Length of expression covered by node.
int Start
Start position in script expression.
virtual Task< IElement > EvaluateAsync(Variables Variables)
Evaluates the node, using the variables provided in the Variables collection. This method should be ...
static readonly ObjectValue Null
Null value.
Basic interface for all types of elements.
object AssociatedObjectValue
Associated object value.
Interface for property enumerators.
Task< IElement > EnumerateProperties(object Object)
Enumerates the properties of an object (of a type it supports).