Simon Cruanes
8f9ecf5f41
some fixes related to review
2021-09-24 22:45:17 -04:00
Simon Cruanes
d46a679b3b
fix bug in CCParse.line, add set_current_slice, fix tests
2021-06-06 23:00:51 -04:00
Simon Cruanes
352fc10d3b
more doc for CCParse
2021-06-06 22:49:43 -04:00
Simon Cruanes
1517f64f55
CCParse: add slice and the ability to recurse on them
...
the idea is that it's often convenient to split the input into smaller
part (e.g. lines), or do a first pass of parsing that just returns a
slice of the input; and then later to use another parser on that slice
to extract the actual data. The new notion of `slice` allows that,
while preserving locations wrt the original input.
2021-06-06 22:42:20 -04:00
Simon Cruanes
88fe234a4c
add CCParse.{char_fold, chars_fold_map}
...
useful for non-trivial lexing
2021-06-06 18:49:55 -04:00
Simon Cruanes
7081a411c8
small doc change
2021-06-06 17:16:26 -04:00
Simon Cruanes
c10ae8d84f
parse: fix bugs, add tests, add U.{in_paren,in_paren_opts,option}
2021-06-06 17:08:57 -04:00
Simon Cruanes
37af485971
parse: expose Position module, add or_, both, lookahead, U.bool
2021-06-06 15:08:13 -04:00
Simon Cruanes
171b4ddcd9
parse: deprecate try_, rename new function try_opt
2021-06-06 14:14:48 -04:00
Simon Cruanes
0ec40c2331
CCParse: heavy refactoring, many new functions
2021-06-06 14:14:48 -04:00
Simon Cruanes
7318162c55
wip: rework CCParse
2021-06-06 14:14:48 -04: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
Simon Cruanes
080f81a9dd
fix(parse): error in many
2019-09-06 14:12:08 -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
2a9795090b
test: improve perf by changing random gens
2018-10-13 18:52:22 -05:00
nathan moreau
3e2fbce3ee
Comments - few changes
2018-02-07 14:36:03 +01:00
Simon Cruanes
8f46fdb6d2
move to jbuilder ( closes #165 )
2018-01-14 17:43:56 -06:00
Jacques-Pascal Deplaix
6d2063ded4
Internally shadow polymorphic operators and functions from Pervasives
2018-01-14 23:32:13 +00:00
Simon Cruanes
03fd42e67d
reindentation
2017-01-25 00:08:12 +01:00
Simon Cruanes
72d43c6eeb
add CCParse into core, a simple, lightweight version of parser combs
2016-11-03 20:10:18 +01:00