2using System.Collections.Generic;
3using System.Threading.Tasks;
18 private readonly LinkedList<IElement> elements =
new LinkedList<IElement>();
20 private readonly
int width;
30 this.columns = Columns;
31 this.width = this.columns.
Length;
39 get => this.variables;
40 internal set => this.variables = value;
49 string[] Headers =
new string[this.width];
52 for (i = 0; i < this.width; i++)
55 Headers[i] = Ref.VariableName;
57 Headers[i] =
"c" + (i + 1).ToString();
60 return new ObjectMatrix(this.height, this.width, this.elements)
73 this.elements.Clear();
75 return Task.FromResult(
true);
84 return Task.FromResult(
true);
94 return Task.FromResult(
true);
103 return Task.FromResult(
true);
113 return Task.FromResult(
true);
124 return Task.FromResult(
true);
133 return Task.FromResult(
true);
146 return Task.FromResult(
true);
157 return Task.FromResult(
true);
166 if (this.variables is
null)
180 this.elements.AddLast(E);
200 return Task.FromResult(
true);
210 return Task.FromResult(
true);
220 return Task.FromResult(
true);
Base class for all nodes in a parsed script tree.
int Length
Length of expression covered by node.
virtual bool IsAsynchronous
If the node (or its decendants) include asynchronous evaluation. Asynchronous nodes should be evaluat...
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.
Export is serialized into table form.
Task< bool > StartBlock(string BlockID)
Is called when a block in a collection is started.
Task< bool > EndLedger()
Is called when export of ledger is finished.
ObjectMatrix ToMatrix()
Converts the exported information into an object matrix with column headers.
Task< bool > EndCollection()
Is called when a collection is finished.
Task< bool > BlockMetaData(string Key, object Value)
Reports block meta-data.
Task< bool > StartCollection(string CollectionName)
Is called when a collection is started.
Task< bool > ReportError(string Message)
Is called when an error is reported.
async Task< bool > EndEntry()
Is called when an entry is finished.
Task< bool > ReportException(Exception Exception)
Is called when an exception has occurred.
Task< bool > ReportProperty(string PropertyName, object PropertyValue)
Is called when a property is reported.
Task< bool > StartEntry(string ObjectId, string TypeName, EntryType EntryType, DateTimeOffset EntryTimestamp)
Is called when an entry is started.
Task< bool > StartLedger()
Is called when export of ledger is started.
ExportToTable(ScriptNode[] Columns)
Export is serialized into object form.
Task< bool > CollectionCleared(DateTimeOffset EntryTimestamp)
Is called when the collection has been cleared.
Task< bool > EndBlock()
Is called when a block in a collection is finished.
Interface for ledger exports.
Basic interface for all types of elements.
EntryType
Ledger entry type.