Uses of Class
fj.data.fingertrees.FingerTree
Packages that use FingerTree
Package
Description
Types that set the premise for the existence of Functional Java.
Common algebraic data types.
Provides 2-3 finger trees, a functional representation of persistent sequences supporting access to the ends in
amortized O(1) time.
-
Uses of FingerTree in fj
Methods in fj that return types with arguments of type FingerTreeModifier and TypeMethodDescriptionstatic <V,A> Show <FingerTree<V, A>> Show.fingerTreeShow(Show<V> sv, Show<A> sa) -
Uses of FingerTree in fj.data
Fields in fj.data declared as FingerTreeModifier and TypeFieldDescriptionprivate final FingerTree<K, P2<K, A>> PriorityQueue.ftreeprivate final FingerTree<Integer, A> Seq.ftreeMethods in fj.data with parameters of type FingerTreeModifier and TypeMethodDescriptionstatic <K,A> PriorityQueue <K, A> PriorityQueue.priorityQueue(Equal<K> e, FingerTree<K, P2<K, A>> ft) Creates a priority queue from a finger tree.Constructors in fj.data with parameters of type FingerTreeModifierConstructorDescriptionprivatePriorityQueue(Equal<K> e, FingerTree<K, P2<K, A>> ft) privateSeq(FingerTree<Integer, A> ftree) -
Uses of FingerTree in fj.data.fingertrees
Subclasses of FingerTree in fj.data.fingertreesModifier and TypeClassDescriptionfinal classDeep<V,A> A finger tree with 1-4-digits on the left and right, and a finger tree of 2-3-nodes in the middle.final classEmpty<V,A> The empty tree.final classSingle<V,A> A tree with a single element.Fields in fj.data.fingertrees declared as FingerTreeMethods in fj.data.fingertrees that return FingerTreeModifier and TypeMethodDescriptionprivate static <V,A> FingerTree <V, Node<V, A>> Deep.addDigits0(Measured<V, A> m, FingerTree<V, Node<V, A>> m1, Digit<V, A> s1, Digit<V, A> p2, FingerTree<V, Node<V, A>> m2) private static <V,A> FingerTree <V, Node<V, Node<V, A>>> Deep.addDigits1(Measured<V, Node<V, A>> m, FingerTree<V, Node<V, Node<V, A>>> m1, Digit<V, Node<V, A>> x, Node<V, A> n, Digit<V, Node<V, A>> y, FingerTree<V, Node<V, Node<V, A>>> m2) private static <V,A> FingerTree <V, Node<V, Node<V, A>>> Deep.addDigits2(Measured<V, Node<V, A>> m, FingerTree<V, Node<V, Node<V, A>>> m1, Digit<V, Node<V, A>> suffix, Node<V, A> n1, Node<V, A> n2, Digit<V, Node<V, A>> prefix, FingerTree<V, Node<V, Node<V, A>>> m2) private static <V,A> FingerTree <V, Node<V, Node<V, A>>> Deep.addDigits3(Measured<V, Node<V, A>> m, FingerTree<V, Node<V, Node<V, A>>> m1, Digit<V, Node<V, A>> suffix, Node<V, A> n1, Node<V, A> n2, Node<V, A> n3, Digit<V, Node<V, A>> prefix, FingerTree<V, Node<V, Node<V, A>>> m2) private static <V,A> FingerTree <V, Node<V, Node<V, A>>> Deep.addDigits4(Measured<V, Node<V, A>> m, FingerTree<V, Node<V, Node<V, A>>> m1, Digit<V, Node<V, A>> suffix, Node<V, A> n1, Node<V, A> n2, Node<V, A> n3, Node<V, A> n4, Digit<V, Node<V, A>> prefix, FingerTree<V, Node<V, Node<V, A>>> m2) FingerTree<V, A> Deep.append(FingerTree<V, A> t) FingerTree<V, A> Empty.append(FingerTree<V, A> t) abstract FingerTree<V, A> FingerTree.append(FingerTree<V, A> t) Appends one finger tree to another.FingerTree<V, A> Single.append(FingerTree<V, A> t) private static <V,A> FingerTree <V, Node<V, A>> Deep.append1(Measured<V, A> m, FingerTree<V, Node<V, A>> xs, Node<V, A> a, FingerTree<V, Node<V, A>> ys) private static <V,A> FingerTree <V, Node<V, A>> Deep.append2(Measured<V, A> m, FingerTree<V, Node<V, A>> t1, Node<V, A> n1, Node<V, A> n2, FingerTree<V, Node<V, A>> t2) private static <V,A> FingerTree <V, Node<V, A>> Deep.append3(Measured<V, A> m, FingerTree<V, Node<V, A>> t1, Node<V, A> n1, Node<V, A> n2, Node<V, A> n3, FingerTree<V, Node<V, A>> t2) private static <V,A> FingerTree <V, Node<V, A>> Deep.append4(Measured<V, A> m, FingerTree<V, Node<V, A>> t1, Node<V, A> n1, Node<V, A> n2, Node<V, A> n3, Node<V, A> n4, FingerTree<V, Node<V, A>> t2) FingerTree<V, A> FingerTree<V, A> abstract FingerTree<V, A> Adds the given element to this tree as the first element.FingerTree<V, A> FingerTree<V, A> Constructs a deep tree.FingerTree<V, A> Constructs a deep tree with the given annotation value.private static <V,A> FingerTree <V, A> Deep.deepL(Measured<V, A> measured, Option<Digit<V, A>> lOpt, FingerTree<V, Node<V, A>> m, Digit<V, A> r) private static <V,A> FingerTree <V, A> Deep.deepR(Measured<V, A> measured, Option<Digit<V, A>> rOpt, FingerTree<V, Node<V, A>> m, Digit<V, A> l) static <V,A> FingerTree <V, A> Creates an empty finger tree with elements of type A and node annotations of type V.FingerTree<V, A> MakeTree.empty()Constructs an empty tree.static <A> FingerTree<Integer, A> FingerTree.emptyIntAddition()static <A> FingerTree<Integer, P2<Integer, A>> FingerTree.emptyIntMax()Returns a finger tree which combines the integer node annotations with the maximum function.final <B> FingerTree<V, A> FingerTree<V, A> Deep.init()FingerTree<V, A> Empty.init()abstract FingerTree<V, A> FingerTree.init()The tree without the last element.FingerTree<V, A> Single.init()<B> FingerTree<V, B> <B> FingerTree<V, B> abstract <B> FingerTree<V, B> Maps the given function across this tree, measuring with the given Measured instance.<B> FingerTree<V, B> FingerTree<V, Node<V, A>> Deep.middle()Returns a finger tree of the inner nodes of this tree.FingerTree<V, A> Constructs a singleton tree.FingerTree<V, A> FingerTree<V, A> abstract FingerTree<V, A> Adds the given element to this tree as the last element.FingerTree<V, A> FingerTree<V, A> Deep.tail()FingerTree<V, A> Empty.tail()abstract FingerTree<V, A> FingerTree.tail()The tree without the first element.FingerTree<V, A> Single.tail()final FingerTree<V, A> Digit.toTree()Returns the tree representation of this digit.Methods in fj.data.fingertrees that return types with arguments of type FingerTreeModifier and TypeMethodDescriptionfinal P2<FingerTree<V, A>, FingerTree<V, A>> Splits this tree into a pair of subtrees at the point where the given predicate, based on the measure, changes fromfalsetotrue.final P2<FingerTree<V, A>, FingerTree<V, A>> Splits this tree into a pair of subtrees at the point where the given predicate, based on the measure, changes fromfalsetotrue.(package private) P3<FingerTree<V, A>, A, FingerTree<V, A>> (package private) P3<FingerTree<V, A>, A, FingerTree<V, A>> (package private) P3<FingerTree<V, A>, A, FingerTree<V, A>> (package private) P3<FingerTree<V, A>, A, FingerTree<V, A>> final P3<FingerTree<V, A>, A, FingerTree<V, A>> Likesplit, but returns the element wherepredfirst holds separately.final P3<FingerTree<V, A>, A, FingerTree<V, A>> Likesplit, but returns the element wherepredfirst holds separately.(package private) abstract P3<FingerTree<V, A>, A, FingerTree<V, A>> (package private) abstract P3<FingerTree<V, A>, A, FingerTree<V, A>> (package private) P3<FingerTree<V, A>, A, FingerTree<V, A>> (package private) P3<FingerTree<V, A>, A, FingerTree<V, A>> Methods in fj.data.fingertrees with parameters of type FingerTreeModifier and TypeMethodDescriptionprivate static <V,A> FingerTree <V, Node<V, A>> Deep.addDigits0(Measured<V, A> m, FingerTree<V, Node<V, A>> m1, Digit<V, A> s1, Digit<V, A> p2, FingerTree<V, Node<V, A>> m2) private static <V,A> FingerTree <V, Node<V, Node<V, A>>> Deep.addDigits1(Measured<V, Node<V, A>> m, FingerTree<V, Node<V, Node<V, A>>> m1, Digit<V, Node<V, A>> x, Node<V, A> n, Digit<V, Node<V, A>> y, FingerTree<V, Node<V, Node<V, A>>> m2) private static <V,A> FingerTree <V, Node<V, Node<V, A>>> Deep.addDigits2(Measured<V, Node<V, A>> m, FingerTree<V, Node<V, Node<V, A>>> m1, Digit<V, Node<V, A>> suffix, Node<V, A> n1, Node<V, A> n2, Digit<V, Node<V, A>> prefix, FingerTree<V, Node<V, Node<V, A>>> m2) private static <V,A> FingerTree <V, Node<V, Node<V, A>>> Deep.addDigits3(Measured<V, Node<V, A>> m, FingerTree<V, Node<V, Node<V, A>>> m1, Digit<V, Node<V, A>> suffix, Node<V, A> n1, Node<V, A> n2, Node<V, A> n3, Digit<V, Node<V, A>> prefix, FingerTree<V, Node<V, Node<V, A>>> m2) private static <V,A> FingerTree <V, Node<V, Node<V, A>>> Deep.addDigits4(Measured<V, Node<V, A>> m, FingerTree<V, Node<V, Node<V, A>>> m1, Digit<V, Node<V, A>> suffix, Node<V, A> n1, Node<V, A> n2, Node<V, A> n3, Node<V, A> n4, Digit<V, Node<V, A>> prefix, FingerTree<V, Node<V, Node<V, A>>> m2) FingerTree<V, A> Deep.append(FingerTree<V, A> t) FingerTree<V, A> Empty.append(FingerTree<V, A> t) abstract FingerTree<V, A> FingerTree.append(FingerTree<V, A> t) Appends one finger tree to another.FingerTree<V, A> Single.append(FingerTree<V, A> t) private static <V,A> FingerTree <V, Node<V, A>> Deep.append1(Measured<V, A> m, FingerTree<V, Node<V, A>> xs, Node<V, A> a, FingerTree<V, Node<V, A>> ys) private static <V,A> FingerTree <V, Node<V, A>> Deep.append2(Measured<V, A> m, FingerTree<V, Node<V, A>> t1, Node<V, A> n1, Node<V, A> n2, FingerTree<V, Node<V, A>> t2) private static <V,A> FingerTree <V, Node<V, A>> Deep.append3(Measured<V, A> m, FingerTree<V, Node<V, A>> t1, Node<V, A> n1, Node<V, A> n2, Node<V, A> n3, FingerTree<V, Node<V, A>> t2) private static <V,A> FingerTree <V, Node<V, A>> Deep.append4(Measured<V, A> m, FingerTree<V, Node<V, A>> t1, Node<V, A> n1, Node<V, A> n2, Node<V, A> n3, Node<V, A> n4, FingerTree<V, Node<V, A>> t2) FingerTree<V, A> Constructs a deep tree.FingerTree<V, A> Constructs a deep tree with the given annotation value.private static <V,A> FingerTree <V, A> Deep.deepL(Measured<V, A> measured, Option<Digit<V, A>> lOpt, FingerTree<V, Node<V, A>> m, Digit<V, A> r) private static <V,A> FingerTree <V, A> Deep.deepR(Measured<V, A> measured, Option<Digit<V, A>> rOpt, FingerTree<V, Node<V, A>> m, Digit<V, A> l) Method parameters in fj.data.fingertrees with type arguments of type FingerTreeModifier and TypeMethodDescriptionfinal <B> BPerforms a reduction on this finger tree using the given arguments.Constructors in fj.data.fingertrees with parameters of type FingerTree