Module Re__.Automata
type mark
= int
type sem
=[
|
`Longest
|
`Shortest
|
`First
]
type rep_kind
=[
|
`Greedy
|
`Non_greedy
]
val pp_sem : Stdlib.Format.formatter -> sem -> unit
val pp_rep_kind : Stdlib.Format.formatter -> rep_kind -> unit
val is_eps : expr -> bool
val pp : Stdlib.Format.formatter -> expr -> unit
val create_ids : unit -> ids
val cst : ids -> Re__.Cset.t -> expr
val empty : ids -> expr
val alt : ids -> expr list -> expr
val seq : ids -> sem -> expr -> expr -> expr
val eps : ids -> expr
val rep : ids -> rep_kind -> sem -> expr -> expr
val mark : ids -> mark -> expr
val pmark : ids -> Re__.Pmark.t -> expr
val erase : ids -> mark -> mark -> expr
val before : ids -> Re__.Category.t -> expr
val after : ids -> Re__.Category.t -> expr
val rename : ids -> expr -> expr
module Marks : sig ... end
module E : sig ... end
type hash
type mark_infos
= int array
type status
=
|
Failed
|
Match of mark_infos * Re__.Pmark.Set.t
|
Running
module State : sig ... end
val create_working_area : unit -> working_area
val index_count : working_area -> int
val delta : working_area -> Re__.Category.t -> Re__.Cset.c -> State.t -> State.t
val deriv : working_area -> Re__.Cset.t -> (Re__.Category.t * Re__.Cset.t) list -> State.t -> (Re__.Cset.t * State.t) list
val status : State.t -> status