Fixpoint.Regex
This implements a regular expression suitable for forward dataflow analysis (concat has been replaced by append), where the regular expression is represented using a term graph.
module type Letter = sig ... end
module type S = sig ... end
Generic signature for a regex interface.
type 'l tagged_regex = private
| Empty
| Epsilon
| Join of int * 'l tagged_regex * 'l tagged_regex
| Append of int * 'l tagged_regex * 'l
| AppendStar of int * 'l tagged_regex * 'l tagged_regex
Tagged regular expressions. The tag is used for cons-hashing and share as many data structures as possibles. Tags should not be used outside of the implementation.