package orsetto
Install
dune-project
Dependency
Authors
Maintainers
Sources
sha256=585297372d7f6cfb830214e9ef22d6d072a39b2a1591ef90f1ee2bcfe144cad3
md5=6bb6a7ba88bf2c7595a0b332921e60b4
doc/orsetto.cf/Cf_dfa/Create/index.html
Module Cf_dfa.Create
Use Create(B) to make the DFA module for B including its optional affix operators.
Parameters
Signature
include Regular with type event := B.Event.t
val nil : termThe empty term, representing no events.
Use sat f to make a term representing any event that satisfies the predicate f.
Use cats s to make a term representing the concatenation of all the terms of s in sequential order.
Use alt2 a b to make a term representing the occurrence of either a or b.
Use alts s to make a term representing the occurrence of any of the alternatives in s.
Use star t to make a term representing the Kleene star of t, i.e. zero, one or more occurrences of t.
Use seq t to make a term representing a sequence of occurrences of t.
If ~a is used, then it specifies the minimum number of occurrences in the recognized sequence. If ~b is used then it specifies the maximum number of occurrences in the recognized sequence. Composition raises Invalid_argument if a < 0 or b < a.
include Machine with type event := B.Event.t and type 'r fin := 'r fin
The type of automatons parameterized by final identifier type. An imperative programming interface is provided below for elaboration.
Use copy dfa to copy the internal state of dfa into a new machine, ready to advance from the same point.
val reset : 'r t -> unitUse reset dfa to reset the internal state of dfa to its initial state, ready to advance on new events.
Use advance dfa event to advance dfa with event. Raises Failure if dfa has rejected an event previously.
val rejected : 'r t -> boolUse finished dfa to check whether dfa has rejected an event and and may not be advanced any further.
val accepted : 'r t -> boolUse accepted dfa to check whether dfa has reached a final state. A DFA may still be further advanced after reaching one of its final states the first time.
val finish : 'r t -> 'rUse finish dfa to get the final value dfa. Raise Not_found if no final value is available, i.e. either because it has rejected an event or it has not yet reached an accepting state.