Commit graph

1257 commits

Author SHA1 Message Date
Simon Cruanes
21feaaf1ca fix compilation on < 4.08 2019-06-19 10:02:55 -05:00
Simon Cruanes
7ff5aa0d18 fix: add shims for CCArray 2019-06-18 23:10:26 -05:00
Simon Cruanes
96ed8a37ab feat: introduce shim modules for 4.08 compat
- also make `unlabel` an explicit operation
- use `Stdlib` instead of `Pervasives`
- remove some warnings in Format
2019-06-14 18:26:14 -05:00
Simon Cruanes
fa0290061b doc: fix bad example in CCIO 2019-05-31 09:27:42 -05:00
JPR
8e3dc5e006 Small typos 2019-05-14 11:14:12 -05:00
rymdhund
05e49a27e7 Remove unused reference 2019-04-29 09:58:29 -05:00
Simon Cruanes
3712db3a5b chore: use iter, not sequence, in tests 2019-04-13 03:20:56 -05:00
Simon Cruanes
0d6c922eb1 fix: use same evaluation order as stdlib for CCList.init
close #256
2019-04-13 03:10:38 -05:00
Simon Cruanes
1654f8c826 test: add regression test for #256 2019-04-13 03:10:29 -05:00
Christopher Zimmermann
bb4d8a89f3 don't use Compenv.module_of_filename
this simple implementation is good enough for us.
2019-03-07 23:15:24 +00:00
Simon Cruanes
bfa5d9adde breaking: make Array.random_choose raise invalid_arg instead of not_found 2019-02-19 18:46:08 -06:00
Simon Cruanes
f190964cfd fix: make Array.random_choose fail on empty array at creation time
see #246
2019-02-18 20:41:17 -06:00
Simon Cruanes
c893716c1a feat: add remove function to het map/tbl 2019-02-16 16:15:24 -06:00
Simon Cruanes
3236d3c8b9 fix: missing type annotation for specializing int.compare 2019-02-04 13:33:52 -06:00
Simon Cruanes
c10ad46fbd prepare for 2.5 2019-02-02 14:03:22 -06:00
Simon Cruanes
83251c9efa Merge branch 'br-2.4.1' 2019-02-02 14:01:08 -06:00
Simon Cruanes
b60fe99365 perf: annotate types in monomorphic/float/int to help specialize builtins
close #245
2019-01-30 21:33:39 -06:00
Calascibetta Romain
052e607c5c CCFQueue.t must be covariant 2019-01-21 17:53:26 +00:00
Calascibetta Romain
23f759b984 Use GADT to discard impossible case on CCFQueue. 2019-01-21 17:53:26 +00:00
Simon Cruanes
d0f0bf7024 doc: small fix 2018-12-21 17:47:35 -06:00
Simon Cruanes
91adde9743 minor fix 2018-12-21 09:44:28 -06:00
Fardale
23d7ea20f6 [WIP] Work on documentation (#242)
`CCResult` add doc for map_l
2018-12-21 15:43:36 +00:00
Simon Cruanes
f8d9e33900 fix(funvec): expose pop, fix off by one error
close #241
2018-12-11 22:57:06 -06:00
Simon Cruanes
6a90cb25e7 wip: fix retrocompat issues in cclist 2018-12-03 19:59:41 -06:00
Simon Cruanes
ef8d19ac65 some typos in unlabel 2018-12-03 09:47:35 -06:00
Simon Cruanes
197b4e7f1b prepare for 2.4 2018-11-30 10:40:13 -06:00
Simon Cruanes
3b0ceb7821 fix(vector): free elements in more functions, add fill_empty_slots_with
see #235
2018-11-30 10:29:08 -06:00
Fabian
ff58dc0b5f Fix #235 for CCRingBuffer
* Make dummy available to MakeFromArray

* Overwrite deleted elements with a dummy element to allow them to be GCed

* Test that deleted elements can be GCed
2018-11-30 10:14:09 -06:00
Simon Cruanes
b21ca4e0d8 wip: fix(vec): release elements after their removal
see #235
2018-11-30 10:14:09 -06:00
Nathan Rebours
29a75daac1 Add CCResult.iter_err
Closes #238
2018-11-19 17:17:26 +00:00
Simon Cruanes
da2c9e7c7c doc: abide by odoc's whims 2018-11-02 20:25:37 -05:00
Simon Cruanes
113d03225f add CCEqual.{always,never}_eq
close #232
2018-11-02 20:17:36 -05:00
Simon Cruanes
26c8eb33bf fix: remove spurious Labels module 2018-11-02 20:14:50 -05:00
Christopher Zimmermann
333fa8067e add containersLabels.ml 2018-11-03 01:14:12 +00:00
Simon Cruanes
6d1f0b9957 rename Random.sample_without_{replacement,duplicates}
- deprecate sample_without_replacement
- use `~cmp` as the named argument, more uniform

close #130
2018-10-16 11:09:27 -05:00
Simon Cruanes
1d3ba3a6f1 doc: fix small inaccuracy in comments and API 2018-10-13 19:09:36 -05:00
Simon Cruanes
b7e8dcb5ff chore: better deps for unlabel 2018-10-13 19:09:36 -05:00
Christopher Zimmermann
f02f291c7a Create CCEqualLabels 2018-10-13 19:09:36 -05:00
Christopher Zimmermann
c6a3fe86eb Create CCArray_sliceLabels 2018-10-13 19:09:35 -05:00
Christopher Zimmermann
7822f3a045 Create CCStringLabels
CAVE: there is a breaking interface change for String.is_sub
2018-10-13 19:09:35 -05:00
Christopher Zimmermann
f6e1d81ed7 Generate unlabelled interfaces from labelled ones
* add unlabel.ml which parses interfaces and removes labels in function declarations and docstrings. This is a quick hack, but it does the job.
 * an attribute [@keep_label] can be added to the labelled arguments to mark labels like ~cmp which should stay in the "unlabelled" interface
 * While augmenting the labelled interfaces I stumbled across some inconsistencies between the currend labelled / non-labelled interfaces. I used the labelling that made most sense to me and added a "FIXME" comment.
 * Maybe we should break backwards compatibility at some point and name the comparison arguments to the sorting functions in CCArrayLabels.ml ~cmp instead of ~f ?
2018-10-13 19:09:35 -05:00
Simon Cruanes
2a9795090b test: improve perf by changing random gens 2018-10-13 18:52:22 -05:00
Simon Cruanes
e22a55668d style edit 2018-10-08 20:48:02 -05:00
Francois Berenger
1e21784ce1 added List.counts, related to List.count (#230)
- add `List.count_true_false` related to `List.count`
2018-10-08 20:43:06 -05:00
Hongchang Wu
e8617c4f05 Add CCResult.get_or_failwith 2018-10-05 00:55:32 -05:00
Simon Cruanes
3b1de9a1c8 chore(build): migrate to dune 1.0 2018-09-16 19:53:40 -05:00
Metin Akat
e447f5a1bc Version annotation of CCInt.( ** ) 2018-09-02 10:56:11 -05:00
Metin Akat
7d25684941 Support using ** for exponentiation 2018-09-02 10:56:11 -05:00
Simon Cruanes
13fe66c968 chore: update dune to use dune-config 2018-08-15 13:38:58 -05:00
Simon Cruanes
9238daf7c3 fix: compat with 4.07 2018-08-07 03:23:11 -05:00