summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2009-08-26prealloc leaf box for transient map, grow by 4Rich Hickey
Signed-off-by: Rich Hickey <richhickey@gmail.com>
2009-08-26fixed bug in HashCollisionNodeChristophe Grand
Signed-off-by: Rich Hickey <richhickey@gmail.com>
2009-08-26Changed licensing of PersistentHashMap back to EPLChristophe Grand
Signed-off-by: Rich Hickey <richhickey@gmail.com>
2009-08-26in transient mode, when nesting a hash collision node in a bitmap node, use ↵Christophe Grand
a better sized initial array Signed-off-by: Rich Hickey <richhickey@gmail.com>
2009-08-26fixed assoc on collisionChristophe Grand
Signed-off-by: Rich Hickey <richhickey@gmail.com>
2009-08-26Replaced PersistentHashMap by PersistentHashMap2Christophe Grand
Signed-off-by: Rich Hickey <richhickey@gmail.com>
2009-08-26shrink when children count <= 8Christophe Grand
Signed-off-by: Rich Hickey <richhickey@gmail.com>
2009-08-26Fixed count on transient assocChristophe Grand
Signed-off-by: Rich Hickey <richhickey@gmail.com>
2009-08-26factory methods use transientsChristophe Grand
Signed-off-by: Rich Hickey <richhickey@gmail.com>
2009-08-26refined HashCollisionNodeChristophe Grand
Signed-off-by: Rich Hickey <richhickey@gmail.com>
2009-08-26made helper methods privateChristophe Grand
Signed-off-by: Rich Hickey <richhickey@gmail.com>
2009-08-26made ArrayNode to pack its children into a BitmapIndexedNode when count < 12Christophe Grand
Signed-off-by: Rich Hickey <richhickey@gmail.com>
2009-08-26use transients in createNodeChristophe Grand
Signed-off-by: Rich Hickey <richhickey@gmail.com>
2009-08-26implemented seq on array nodesChristophe Grand
Signed-off-by: Rich Hickey <richhickey@gmail.com>
2009-08-26implemented dissoc and fixed bugs in edit* helper methodsChristophe Grand
Signed-off-by: Rich Hickey <richhickey@gmail.com>
2009-08-26fix bug w/ dissoc on HashCollisionNodeChristophe Grand
Signed-off-by: Rich Hickey <richhickey@gmail.com>
2009-08-26transient assocChristophe Grand
Signed-off-by: Rich Hickey <richhickey@gmail.com>
2009-08-26replace instecof tests by null testsChristophe Grand
Signed-off-by: Rich Hickey <richhickey@gmail.com>
2009-08-26made ArrayNode not leaflessChristophe Grand
Signed-off-by: Rich Hickey <richhickey@gmail.com>
2009-08-26fixed count updateChristophe Grand
Signed-off-by: Rich Hickey <richhickey@gmail.com>
2009-08-26first cut at a leafless, not always packed PersistentHashMapChristophe Grand
Signed-off-by: Rich Hickey <richhickey@gmail.com>
2009-08-24Add support for chunked seqs to 'for'. Refs #1Chouser
2009-08-24Add chunked seq support to concatChouser
concat is defined early, so I moved the the chunk fns up which required changing 'chunk-cons' to use static methods directly instead of core fns. Refs #1
2009-08-24delay seq on chunk-rest in doseqChouser
doseq was calling seq on chunk-rest too early. When combinded with chunked concat this caused some laziness tests to fail. Refs #1
2009-08-23switched wait/notify to countdown latchRich Hickey
2009-08-20Merge branch 'lazychain'Rich Hickey
2009-08-20fix interleave not fully lazyRich Hickey
2009-08-19Add chunked seq support to doseq, v2. Refs #1Chouser
2009-08-19make clojure.lang.Keyword Serializable, fixes #174Chas Emerick
Signed-off-by: Chouser <chouser@n01se.net>
2009-08-19fix #168, ant targets should fail on error, also test print report correctlyMike Hinchey
Signed-off-by: Chouser <chouser@n01se.net>
2009-08-19updated remaining tests, closes #158Frantisek Sodomka
Signed-off-by: Chouser <chouser@n01se.net>
2009-08-19inline nth with not-foundRich Hickey
2009-08-06re-enable writable locals for letfnRich Hickey
2009-08-05replace copyOf with arrayCopyRich Hickey
2009-08-05fix count update on dissocChristophe Grand
Signed-off-by: Rich Hickey <richhickey@gmail.com>
2009-08-05moved ensureEditable() assertions to ATransientMapChristophe Grand
Signed-off-by: Rich Hickey <richhickey@gmail.com>
2009-08-05added TransientArrayMapChristophe Grand
Signed-off-by: Rich Hickey <richhickey@gmail.com>
2009-08-05extracted ATransientMap from TransientHashMapChristophe Grand
Signed-off-by: Rich Hickey <richhickey@gmail.com>
2009-08-05changed return type for persistent() in ITransientMapChristophe Grand
Signed-off-by: Rich Hickey <richhickey@gmail.com>
2009-08-05static factory methods now use transientsChristophe Grand
Signed-off-by: Rich Hickey <richhickey@gmail.com>
2009-08-05First cut at TransientHashMapChristophe Grand
Signed-off-by: Rich Hickey <richhickey@gmail.com>
2009-08-05define ITransientMapChristophe Grand
Signed-off-by: Rich Hickey <richhickey@gmail.com>
2009-08-03renamed mutable -> transient, immutable! -> persistent!Rich Hickey
2009-08-03Merge branch 'chunks' into merge-chunksRich Hickey
2009-08-03fix commute after setRich Hickey
2009-08-03merge ensureRich Hickey
2009-08-03fixes commute after setChristophe Grand
Signed-off-by: Rich Hickey <richhickey@gmail.com>
2009-08-02refactor so mutable vectors support ordinary read functions: ↵chunksRich Hickey
get/count/nth/function-call, with thread safety check
2009-08-02enforce single-threaded use of mutable vector, prevent use after immutble callRich Hickey
2009-08-01added support for volatiles in new newRich Hickey
(let [a 42 b 21] (new [supers] this {:volatile [a]} (foo [] ... (set! a 13) ...)))