package orsetto
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=f64814687276bad56483b2b8dfaaf70d0d6485f67fe5d44bff34bfa47af1896e
md5=3a15a377800cf988a310b4082406c685
doc/orsetto.cf/Cf_annot/Coded/Create/index.html
Module Coded.Create
Use Create(B)
to make an annotation system module for the symbols defined in B
and decoded with
f_decode
.
Parameters
Signature
The type of an input event, comprising a symbol and its position.
Representation of a span of positions, comprising the pair of a) the position of the first symbol in the span, and b) the position of the symbol immediately following the last symbol in the span. Accordingly, if both the start and limit fields have the same serial number, then the span is empty, comprising no symbols.
A value annotated with its span of text in the input stream.
module Scan_basis :
Cf_scan.Basis
with type Symbol.t = B.Symbol.t
and type iota = iota
and type position = Cf_decode.position
and type 'a Form.t = 'a form
A basis module for constructing a
Inclusion of the
f_scan
production form signature.
include Cf_scan.Form with type 'a t := 'a form
val imp : 'a -> 'a form
Scanners use imp value
to create a value form with a distinguished implicit position, i.e. not located in the input stream.
val dn : 'a form -> 'a
Scanners use dn form
to get the value wrapped in form
.
Scanners use mv value form
to make a form containing value
attributed with the same position as form
.
Use map f v
to apply f
to the value enclosed in v
to make the result annotated with the same position as v
.
Use join f a b
to apply f
to the values enclosed in a
and b
to make the result annotated with the span that covers the overlap of the positions of both a
and b
.
Use collect s
to collect all the values enclosed in the forms s
to a single list annotated with the span that overlaps all the positions in s
.
val to_iotas : ?start:Cf_decode.position -> B.Symbol.t Seq.t -> iota Seq.t
Use to_iotas s
to lift s
into a sequence of iota values. Use ~start
to provide an explicit starting position.