ChunkedCons
(ChunkedCons. chunk more meta __hash)
(deftype ChunkedCons [chunk more meta ^:mutable __hash]
Object
(toString [coll]
(pr-str* coll))
(equiv [this other]
(-equiv this other))
(indexOf [coll x]
(-indexOf coll x 0))
(indexOf [coll x start]
(-indexOf coll x start))
(lastIndexOf [coll x]
(-lastIndexOf coll x (count coll)))
(lastIndexOf [coll x start]
(-lastIndexOf coll x start))
IWithMeta
(-with-meta [coll new-meta]
(if (identical? new-meta meta)
coll
(ChunkedCons. chunk more new-meta __hash)))
IMeta
(-meta [coll] meta)
ISequential
IEquiv
(-equiv [coll other] (equiv-sequential coll other))
ISeqable
(-seq [coll] coll)
ASeq
ISeq
(-first [coll] (-nth chunk 0))
(-rest [coll]
(if (> (-count chunk) 1)
(ChunkedCons. (-drop-first chunk) more nil nil)
(if (nil? more)
()
more)))
INext
(-next [coll]
(if (> (-count chunk) 1)
(ChunkedCons. (-drop-first chunk) more nil nil)
(when-not (nil? more)
(-seq more))))
IChunkedSeq
(-chunked-first [coll] chunk)
(-chunked-rest [coll]
(if (nil? more)
()
more))
IChunkedNext
(-chunked-next [coll]
(if (nil? more)
nil
more))
ICollection
(-conj [this o]
(cons o this))
IEmptyableCollection
(-empty [coll] (.-EMPTY List))
IHash
(-hash [coll] (caching-hash coll hash-ordered-coll __hash)))