module type Op_T = sig
.. end
The signature of the Op
module, which contains the composition
operators.
include Cf_dfa.T.Expr_Op_T
val ($=) : Cf_dfa.T.x -> 'a -> 'a Cf_dfa.T.r
Use e $= x
to compose a rule that produces x
when the symbols
in the symbol stream match the expression e
.
val ($>) : Cf_dfa.T.x -> (S.t Cf_seq.t -> 'a) -> 'a Cf_dfa.T.r
Use e $> f
to compose a rule that applies the tokenizer function
f
to the sequence of input symbols in the stream recognized by
the expression e
to produce an output token.
val ($@) : Cf_dfa.T.x -> (int -> 'a Cf_dfa.T.t) -> 'a Cf_dfa.T.r
Use e $@ f
to compose a rule that applies the scanning function
f
to the input stream when it is recognized by the expression
e
. The scanning function is passed the length of the recognized
sequence of symbols and receives a parser in return that produces
the output of the rule and makes any advanced manipulations of the
input stream necessary to continue parsing for the next token.
If the parser returned from the scanning function does not
recognize the input stream, then the rule is not matched and the
next best matching rule is selected.
val (!@) : 'a Cf_dfa.T.r list -> 'a Cf_dfa.T.r
Use this operator to combine a list of rules into a single rule.