Commit graph

391 commits

Author SHA1 Message Date
Simon Cruanes
3960ea3792
feat(BV): add set_bool 2022-01-02 21:58:45 -05:00
Simon Cruanes
3d57a5c86e
feat(CCBV): prevent resize from shrinking underlying array
also add `BV.resize_minimize_memory` to force shrinking. This shouldn't
be the default because it can allocate a lot in case of repeated
shrinkings.
2022-01-02 21:57:53 -05:00
Simon Cruanes
92463d33c5
perf(BV): make more functions inline, use raise_notrace 2022-01-02 21:56:33 -05:00
Simon Cruanes
ced66a76e1
perf(CCBV): better bitwise operations
- a 8-bit popcount
- simpler logic for LSB masks
2022-01-02 21:45:26 -05:00
Fardale
19c65b5472 apply comments from the review 2021-05-23 15:01:36 +02:00
Fardale
6a3e446d27 use precomputed table for count_bits_ 2021-05-23 14:49:31 +02:00
Fardale
8ff253f18d chore(CCBV): clean comments 2021-05-22 22:09:24 +02:00
Fardale
8f65bf639b use bytes instead of int array for CCBV 2021-05-22 21:38:36 +02:00
Simon Cruanes
795ae5c546 bv: also refactor inter 2021-05-17 10:03:58 -04:00
Simon Cruanes
1c8265c3f3 bv: refactor for performance and readability 2021-05-17 10:01:35 -04:00
Simon Cruanes
92519b4843 fix(bv): index error in union
close #370
2021-05-17 10:00:59 -04:00
Simon Cruanes
a642aa6f6b bv: add more tests, including regression for #370 2021-05-17 10:00:32 -04:00
Simon Cruanes
1b0639886d feat(bv): add equal 2021-05-17 10:00:05 -04:00
Simon Cruanes
6bfd7f125e test: fix too broad test 2021-05-04 08:54:08 -04:00
Josh Berdine
9211a01f35 code review 2021-04-16 15:15:11 +01:00
Josh Berdine
9e6f453aff feat(CCRAL): add get_and_remove_exn operation
It seems like a waste to repeat the search for an index to both get
the element at that index and then to remove it. The added
`get_and_remove_exn` operation performs a `remove` but returns the
found element rather than forgetting it.
2021-04-16 14:48:14 +01:00
Josh Berdine
0ab8597b78 fix: CCRAL.remove does not remove 2021-04-15 17:56:36 -04:00
Simon Cruanes
b19cd0db5f add regression test for #364 2021-04-15 17:54:18 -04:00
Simon Cruanes
2440092eb5 fix invalid test in intmap 2021-04-03 17:42:17 -04:00
Kye W. Shi
fd1a43497d
CCImmutArray: add tests (#344)
CCImmutArray: add tests
2020-12-16 23:39:46 -05:00
Simon Cruanes
f9ee8d0e89 prepare for 3.1 2020-12-04 18:39:54 -05:00
Simon Cruanes
87a9937938 doc: indicate that ccmutheap is experimental 2020-11-04 12:29:15 -05:00
Simon Cruanes
9643ee94a9 test: add some basic tests to CCMutHeap 2020-10-07 12:03:37 -04:00
Simon Cruanes
aed72685fc refactor: ask for lt in the mutable heap arg 2020-10-07 12:03:27 -04:00
Simon Cruanes
3484efc691 feat: add mutable heap with increase/decrease to containers-data
this code is adapted from msat
2020-10-07 11:45:58 -04:00
Simon Cruanes
e0f14837ac fix warning 2020-09-23 21:34:14 -04:00
Simon Cruanes
652c823978 fix(intmap): order of arguments for the HO param should be stable
close #329
2020-09-08 10:42:10 -04:00
Simon Cruanes
e0f2c78edd fix(int): use shims to provide separate 32/64 bits versions of popcount
close #327
2020-08-05 14:05:48 -04:00
Simon Cruanes
add6a58cf5 prepare for 3.0~rc1 2020-07-28 18:15:05 -04:00
Fardale
01da25cead break: change pp functions to take unit printer for sep/stop/start
sep/stop/start -> pp_sep/pp_stop/pp_start
string -> unit printer
2020-07-27 22:57:29 -04:00
Fardale
b6b2c68913 break(CCGraph): remove deprecated module and function
Remove Seq and pp_seq
2020-07-23 16:32:52 +02:00
Simon Cruanes
644e3487a3 test: fix a test that wouldn't pass on 4.03 2020-07-23 16:32:52 +02:00
Fardale
c22fed18de break: convert sequence to iter in data 2020-07-23 16:32:52 +02:00
Fardale
08d59ea07a break: remove klist in data 2020-07-23 16:32:52 +02:00
Fardale
8c3d716ab1 break: rename fonction from *std_seq* to *seq* 2020-07-23 16:32:52 +02:00
Simon Cruanes
2153c8a5e6 fix(dune): only build containers-data.top in bytecode 2020-04-30 22:19:06 -04:00
Simon Cruanes
df5151636b improvements 2020-04-24 21:11:44 -04:00
Simon Cruanes
a767e4618d wip(3.0): remove deprecated functions, in particular sequence 2020-04-24 20:16:53 -04:00
Simon Cruanes
46e40c9165 delete containers.iter and merge parts of it into containers-data 2020-04-24 19:48:42 -04:00
Simon Cruanes
49545decbf update top packages 2020-04-24 19:07:56 -04:00
Simon Cruanes
952b664a68 test for funvec 2020-04-18 22:14:35 -04:00
Simon Cruanes
15fb26249f fix(funvec): error in pop
close #298
2020-04-18 22:10:35 -04:00
Simon Cruanes
d12213da31 doc: missing raise annotation 2020-03-07 11:25:49 -06:00
Simon Cruanes
5126973173 prepare for 2.8 2019-12-14 17:50:35 -06:00
Simon Cruanes
7d9d9d45b8 feat(list): add indexed functions and fold_on_map
close #222
2019-12-14 16:52:35 -06:00
Simon Cruanes
1947d1804b refactor: also port CCGraph to iter 2019-12-14 16:41:49 -06:00
Simon Cruanes
138047ef11 feat: add {to,of,add}_{iter,std_seq} where relevant; deprecations
deprecate `seq` named functions (for `iter`)
deprecate klist functions (for `std_seq`)

close #231
2019-12-14 16:29:07 -06:00
Simon Cruanes
30251e9426 bump minimum version of OCaml to 4.03, drop deps {result,uchar}
close #274
2019-12-10 19:56:54 -06:00
Simon Cruanes
7cefde490b prepare for 2.7
remove mdx
2019-11-12 08:49:33 -06:00
Simon Cruanes
2ed821bbe1 style: reindent in ccdeque 2019-11-05 18:23:06 -06:00