T
- The partition tree type.private static interface SegmentPartitionTree.PartitionTreeVisitor<T extends PartitionTree<SegmentPartitionTree.LineSegment,T>>
SegmentPartitionTree.VisitingFunction
Modifier and Type | Method and Description |
---|---|
boolean |
acceptInnerNode(T node,
SegmentPartitionTree.LineSegment segment)
Called when a partition tree visits a new inner tree node.
|
boolean |
acceptTerminalNode(T node,
SegmentPartitionTree.LineSegment segment)
Called when a partition tree search finds a terminal node.
|
static <T extends PartitionTree<SegmentPartitionTree.LineSegment,T>> |
all(java.util.function.BiConsumer<T,SegmentPartitionTree.LineSegment> consumer)
Constructs a special partition tree visitor that does not distinguish
between inner and terminal nodes and reports both.
|
static <T extends PartitionTree<SegmentPartitionTree.LineSegment,T>> |
all(java.util.function.BiFunction<T,SegmentPartitionTree.LineSegment,java.lang.Boolean> fun)
Constructs a special partition tree visitor that does not distinguish
between inner and terminal nodes and reports both.
|
static <T extends PartitionTree<SegmentPartitionTree.LineSegment,T>> |
terminal(java.util.function.BiConsumer<T,SegmentPartitionTree.LineSegment> consumer)
Constructs a special partition tree visitor that only receives terminal nodes.
|
boolean acceptTerminalNode(T node, SegmentPartitionTree.LineSegment segment)
node
- The found terminal node.segment
- The segment of the query line within the terminal node.SegmentPartitionTree.VisitingFunction
boolean acceptInnerNode(T node, SegmentPartitionTree.LineSegment segment)
node
- The visited inner node.segment
- The segment of the query line within the node.SegmentPartitionTree.VisitingFunction
static <T extends PartitionTree<SegmentPartitionTree.LineSegment,T>> SegmentPartitionTree.PartitionTreeVisitor<T> terminal(java.util.function.BiConsumer<T,SegmentPartitionTree.LineSegment> consumer)
T
- The partition tree type.consumer
- The consumer to give found terminal nodes to.SegmentPartitionTree.VisitingFunction
static <T extends PartitionTree<SegmentPartitionTree.LineSegment,T>> SegmentPartitionTree.PartitionTreeVisitor<T> all(java.util.function.BiFunction<T,SegmentPartitionTree.LineSegment,java.lang.Boolean> fun)
T
- The partition tree type.fun
- The function to report found inner and terminal nodes to.
This function can return false to end the search early.SegmentPartitionTree.VisitingFunction
static <T extends PartitionTree<SegmentPartitionTree.LineSegment,T>> SegmentPartitionTree.PartitionTreeVisitor<T> all(java.util.function.BiConsumer<T,SegmentPartitionTree.LineSegment> consumer)
T
- The partition tree type.consumer
- The consumer to give found inner and terminal nodes to.SegmentPartitionTree.VisitingFunction