3using System.Threading.Tasks;
28 this.e = ItemEnumerator;
30 this.conditions = Conditions;
51 while (this.e.MoveNext())
53 if (this.MatchesCondition())
65 while (await this.e.MoveNextAsync())
67 if (await this.MatchesConditionAsync())
74 private bool MatchesCondition()
78 if (this.properties is
null)
81 this.properties.Object = this.e.Current;
83 IElement E = this.conditions.Evaluate(this.properties);
95 private async Task<bool> MatchesConditionAsync()
99 if (this.properties is
null)
100 this.properties =
new ObjectProperties(this.e.Current,
this.variables);
102 this.properties.Object = this.e.Current;
104 IElement E = await this.conditions.EvaluateAsync(this.properties);
Base class for all nodes in a parsed script tree.
Enumerator that only returns elements matching a set of conditions.
async Task< bool > MoveNextAsync()
IAsyncEnumerator.MoveNextAsync
object Current
IEnumerator.Current
void Dispose()
IDisposable.Dispose"/>
void Reset()
IEnumerator.Reset
bool MoveNext()
IEnumerator.MoveNext
ConditionalEnumerator(IResultSetEnumerator ItemEnumerator, Variables Variables, ScriptNode Conditions)
Enumerator that only returns elements matching a set of conditions.
Basic interface for all types of elements.
object AssociatedObjectValue
Associated object value.
Interface for result-set enumerators.