API for clojure.data.finger-tree
-
by Chris Houser
Full namespace name:
clojure.data.finger-tree
Overview
Persistent collections based on 2-3 finger trees.
Protocols
ConjL
Protocol
Known implementations:
CountedDoubleList, DeepTree, DelayedTree, Digit1, Digit2, Digit3, Digit4, DoubleList, EmptyTree, SingleTree
conjl
function
Usage: (conjl s a)
Append a to the left-hand side of s
Source
Measured
Protocol
Known implementations:
CountedDoubleList, CountedSortedSet, DeepTree, DelayedTree, Digit1, Digit2, Digit3, Digit4, DoubleList, EmptyTree, nil, SingleTree
getMeter
function
Usage: (getMeter o)
Return the meter object for o
measured
function
Usage: (measured o)
Return the measured value of o
Source
ObjMeter
Protocol
Object for annotating tree elements. idElem and op together form a Monoid.
Known implementations:
nil
idElem
function
Usage: (idElem _)
Return the identity element for this meter
measure
function
Usage: (measure _ o)
Return the measured value of o (same type as idElem)
opfn
function
Usage: (opfn _)
Return an associative function of two args for combining measures
Source
SplitAt
Protocol
Known implementations:
CountedDoubleList, CountedSortedSet
ft-split-at
function
Usage: (ft-split-at o k notfound)
(ft-split-at o k)
Return [pre m post] where pre and post are trees
Source
Splittable
Protocol
Known implementations:
DeepTree, DelayedTree, Digit1, Digit2, Digit3, Digit4, SingleTree
split
function
Usage: (split o pred acc)
Return [pre m post] where pre and post are trees
Source
Tree
Protocol
Known implementations:
CountedDoubleList, DeepTree, DelayedTree, DoubleList, EmptyTree, SingleTree
app3
function
Usage: (app3 t1 ts t2)
Append ts and (possibly deep) t2 to tree t1
app3deep
function
Usage: (app3deep t2 ts t1)
Append ts and t2 to deep tree t1
measureMore
function
Usage: (measureMore o)
Return the measure of o not including the leftmost item
measurePop
function
Usage: (measurePop o)
Return the measure of o not including the rightmost item
Source
Types
CountedDoubleList
type
Fields:
[tree mdata]
Protocols:
ConjL,