ppx_tyreversion
PPX syntax for tyre regular expressions and routes
This PPX compiles
[%tyre {|re|}]
into 'a Tyre.t
and
function%tyre
| {|re1|} as x1 -> e1
...
| {|reN|} as x2 -> eN
into 'a Type.route
, where re
, re1
, ... are regular expressions
expressed in a slightly extended subset of PCRE. The interpretations are:
re?
extracts an option of whatre
extracts.re+
,re*
,re{n,m}
extracts a list of whatre
extracts.(?@qname)
refers to any identifier bound to a typed regular expression of type'a Tyre.t
.- One or more
(?<v>re)
at the top level can be used to bind variables instead ofas ...
. - One or more
(?<v>re)
in a sequence extracts an object where each methodv
is bound to whatre
extracts. - An alternative with one
(?<v>re)
per branch extracts a polymorphic variant where each constructor`v
receives whatre
extracts as its argument. (?&v:qname)
is a shortcut for(?<v>(?&qname))
.
Authors | Gabriel Radanne <drupyog@zoho.com> and Petter A. Urkedal <paurkedal@gmail.com> |
---|---|
License | LGPL-3.0-only WITH OCaml-LGPL-linking-exception |
Published | |
Homepage | https://github.com/paurkedal/ppx_regexp |
Issue Tracker | https://github.com/paurkedal/ppx_regexp/issues |
Maintainer | Petter A. Urkedal <paurkedal@gmail.com> |
Dependencies |
|
Source [http] | https://github.com/paurkedal/ppx_regexp/releases/download/v0.4.1/ppx_regexp-0.4.1.tbz sha256=f6e7b800f39f56e474e57ccce58317113058c0c0e5333f5417361e24e30891a7 md5=9577d2beba9c79ae4f15f3f2107b7c29 |
Edit | https://github.com/ocaml/opam-repository/tree/master/packages/ppx_tyre/ppx_tyre.0.4.1/opam |
No package is dependent