public abstract static class FingerTree.NonEmptyFingerTree<T,S> extends FingerTree<T,S>
FingerTree.NonEmptyFingerTree<T,S>
Modifier and Type | Method and Description |
---|---|
Either<FingerTree<T,S>,FingerTree.NonEmptyFingerTree<T,S>> |
caseEmpty() |
abstract S |
getSummary() |
FingerTree.NonEmptyFingerTree<T,S> |
join(FingerTree<T,S> rightTree) |
BiIndex |
locate(BiFunction<? super S,Integer,Either<Integer,Integer>> navigate,
int position) |
BiIndex |
locateProgressively(ToIntFunction<? super S> metric,
int position) |
BiIndex |
locateRegressively(ToIntFunction<? super S> metric,
int position) |
Tuple3<FingerTree<T,S>,Tuple2<T,Integer>,FingerTree<T,S>> |
split(BiFunction<? super S,Integer,Either<Integer,Integer>> navigate,
int position) |
Tuple3<FingerTree<T,S>,Tuple2<T,Integer>,FingerTree<T,S>> |
split(ToIntFunction<? super S> metric,
int position) |
Tuple3<FingerTree<T,S>,T,FingerTree<T,S>> |
splitAt(int leaf) |
append, asList, empty, fold, foldBetween, foldBetween, get, get, getDepth, getLeaf, getLeafCount, getSummary, getSummaryBetween, getSummaryBetween, getSummaryOpt, insertLeaf, isEmpty, mkTree, mkTree, prepend, removeLeafs, split, updateLeaf
public Either<FingerTree<T,S>,FingerTree.NonEmptyFingerTree<T,S>> caseEmpty()
caseEmpty
in class FingerTree<T,S>
public abstract S getSummary()
public BiIndex locate(BiFunction<? super S,Integer,Either<Integer,Integer>> navigate, int position)
locate
in class FingerTree<T,S>
public BiIndex locateProgressively(ToIntFunction<? super S> metric, int position)
locateProgressively
in class FingerTree<T,S>
public BiIndex locateRegressively(ToIntFunction<? super S> metric, int position)
locateRegressively
in class FingerTree<T,S>
public Tuple3<FingerTree<T,S>,T,FingerTree<T,S>> splitAt(int leaf)
public Tuple3<FingerTree<T,S>,Tuple2<T,Integer>,FingerTree<T,S>> split(ToIntFunction<? super S> metric, int position)
public Tuple3<FingerTree<T,S>,Tuple2<T,Integer>,FingerTree<T,S>> split(BiFunction<? super S,Integer,Either<Integer,Integer>> navigate, int position)
public FingerTree.NonEmptyFingerTree<T,S> join(FingerTree<T,S> rightTree)
join
in class FingerTree<T,S>