SpliteratorTask
Object Hierarchy:
Description:
public abstract class SpliteratorTask<
R,
G> :
ForkJoinTask<
R>
A base class for spliterator based fork-join tasks.
Content:
Properties:
- protected abstract R empty_result { public owned get; }
Gets an empty result.
- protected bool is_leaf { public get; }
Whether or not this task is a leaf node.
- protected bool is_leftmost { public get; }
Whether or not the path from the root to this involves only left child of
each node.
- protected SpliteratorTask<R,G>? left_child { public get; }
The left child of this task.
- protected SpliteratorTask<R,G>? right_child { public get; }
The right child of this task.
- protected Spliterator<G> spliterator { public get; }
Creation methods:
Methods:
- protected void cancel_later_nodes ()
Cancels all tasks which following this in the encounter order.
- protected override void compute ()
- protected abstract R leaf_compute () throws Error
Computes this leaf node task.
- protected abstract SpliteratorTask<R,G> make_child (Spliterator<G> spliterator)
Creates a child task with the given spliterator.
- protected abstract R merge_results (owned R left, owned R right) throws Error
Merges the left and right result, then returns the merged result.
Inherited Members:
All known members inherited from class Gpseq.ForkJoinTask
All known members inherited from class GLib.Object
All known members inherited from interface Gpseq.Task