package orsetto

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type

The regular syntax terms.

type term

The type of a regular language term.

val nil : term

The empty term, representing no events.

val one : char -> term

Use one v to make a term representing the single occurrence of v.

val sat : (char -> bool) -> term

Use sat f to make a term representing any event that satisfies the predicate f.

val cat2 : term -> term -> term

Use cat2 a b to make a term representing a and b concatenated.

val cats : term Seq.t -> term

Use cats s to make a term representing the concatenation of all the terms of s in sequential order.

val alt2 : term -> term -> term

Use alt2 a b to make a term representing the occurrence of either a or b.

val alts : term Seq.t -> term

Use alts s to make a term representing the occurrence of any of the alternatives in s.

val opt : term -> term

Use opt t to make a term representing either zero or one occurences of t.

val star : term -> term

Use star t to make a term representing the Kleene star of t, i.e. zero, one or more occurrences of t.

val seq : ?a:int -> ?b:int -> term -> term

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.

type 'r fin

The type of a final state.

val fin : term -> 'a -> 'a fin

Use fin t r to make t into a final state identified by r