Commit graph

117 commits

Author SHA1 Message Date
Simon Cruanes
d60bea1a98 fix build for 4.11 by working around -nolabels 2020-07-30 10:02:16 -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
c85c135157 break: remove klist type and functions from core 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
18222af1a3 perf: a few more inline annotations 2020-05-12 12:46:12 -04:00
Fardale
2025a62536 feat(CCList): make mem compatible with the Stdlib
The eq argument is now optional.
2020-04-28 15:39:47 +02:00
Simon Cruanes
a767e4618d wip(3.0): remove deprecated functions, in particular sequence 2020-04-24 20:16:53 -04:00
Fardale
0d9b4d910a clean(List): remove functions defined in Stdlib 2020-03-05 17:50:30 -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
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
b2d9e69042 feat: put the let operators inside the Infix modules when relevant 2019-12-14 12:08:48 -06:00
Simon Cruanes
bf0227d404 feat: on 4.08, support let operators
close #276
2019-12-14 12:08:48 -06:00
Simon Cruanes
1b5b23a8f1 remove unlabel, remove all traces of Result 2019-12-10 20:48:38 -06:00
Fardale
0dafceb708 Adding to_string (#270)
* add `CCArray.to_string`
* add `CCArrayLabels.to_string`
* add `CCList.to_string`
* add `CCListLabels.to_string`
* add `CCChar.to_string`
* add `CCPair.to_string`
* add `CCHeap.to_string`
* add `CCSet.to_string`
* add `CCVector.to_string`
2019-10-30 14:26:52 -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
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
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
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
Simon Cruanes
1a4919af29 add relation ops CCList.{group_by,join,join_by,join_all_by,group_join_by} 2018-05-29 11:04:08 -05:00
Simon Cruanes
33d3ee114c add many missing functions to CCListLabels 2018-04-08 18:57:15 -05:00
Simon Cruanes
960e704bb1 test: disable labels for tests
necessary for the consistency checks of Label modules
2018-04-08 18:48:54 -05:00
Simon Cruanes
5986955fb6 feat(list): add {interleave,intersperse} (closes #191) 2018-03-28 20:10:14 -05:00
Simon Cruanes
7a22286ca1 use standard List.sort_uniq 2018-03-13 00:34:49 -05:00
Simon Cruanes
b3c796176d reindent 2018-02-07 08:22:41 -06:00
nathan moreau
3e2fbce3ee Comments - few changes 2018-02-07 14:36:03 +01:00
Simon Cruanes
5814f23d16 add more tests to CCRAL and others 2018-02-04 12:38:17 -06:00
Simon Cruanes
6b48fe873e add another test 2018-02-04 12:05:58 -06:00
Dave Aitken
710266e09c Don't reverse twice in CCList.repeat 2018-02-04 17:34:30 +00:00
Simon Cruanes
5720120fa1 more tests 2018-01-31 20:07:04 -06:00
Simon Cruanes
3b8f7099cb style fixes 2018-01-28 10:31:26 -06:00
nathan moreau
e598aac764 Correcting test CCList.tail_opt 2018-01-28 16:36:27 +01:00
nathan moreau
b0d92f44ea Adding CCList.tail_opt 2018-01-26 09:25:17 +01:00
Simon Cruanes
bc27e60a81 reindent 2018-01-21 14:39:44 -06:00
nathan moreau
25f919070f Adding comments 2 2018-01-21 17:09:42 +01:00
Stavros Polymenis
796702a732 Add CCList.iteri2 and CCList.foldi2 2018-01-18 18:07:19 +00:00
Simon Cruanes
8f46fdb6d2 move to jbuilder (closes #165) 2018-01-14 17:43:56 -06:00
Jacques-Pascal Deplaix
ff69945575 Shadow polymorphic functions in CCList 2018-01-14 23:33:39 +00:00
Jacques-Pascal Deplaix
35c2d0ed54 Fix tests 2018-01-14 23:32:13 +00:00
Jacques-Pascal Deplaix
9622f6f6ff Avoid uses of the polymorphic operators 2018-01-14 23:32:13 +00:00
Jacques-Pascal Deplaix
6d2063ded4 Internally shadow polymorphic operators and functions from Pervasives 2018-01-14 23:32:13 +00:00
Simon Cruanes
7f6cb0f673 have CCList.{get,insert,set}_at_idx work with negative indices 2017-12-25 17:30:00 +01:00
Simon Cruanes
d8610646d8
Merge pull request #170 from jpdeplaix/remove_at_neg_idx
Allow negative indexes in `CCList.remove_at_idx`
2017-12-25 17:25:15 +01:00
Simon Cruanes
17dc7bb5c3 fix default implems of CCList.compare_length{s,_with} 2017-12-24 17:22:02 +01:00
Simon Cruanes
a249f2ac0b missing compat functions 2017-12-24 17:10:02 +01:00
Simon Cruanes
f6b3a7addf warnings 2017-12-24 17:07:59 +01:00
Jacques-Pascal Deplaix
4b30aba080 Allow negative indexes in CCList.remove_at_idx 2017-12-23 15:35:35 +00:00
Jacques-Pascal Deplaix
78ee7e5c2f Add List.count 2017-12-03 21:30:26 +00:00
Simon Cruanes
946a585a9e backport some functions added in 4.05 in CCList 2017-11-29 14:58:35 +01:00