1 (***********************************************************************)
5 (* Xavier Leroy, projet Cristal, INRIA Rocquencourt *)
7 (* Copyright 1996 Institut National de Recherche en Informatique et *)
8 (* en Automatique. All rights reserved. This file is distributed *)
9 (* under the terms of the Q Public License version 1.0. *)
11 (***********************************************************************)
15 (* The shallow abstract syntax *)
23 type regular_expression
=
25 | Characters
of Cset.t
27 | Sequence
of regular_expression
* regular_expression
28 | Alternative
of regular_expression
* regular_expression
29 | Repetition
of regular_expression
30 | Bind
of regular_expression
* (string * location
)
32 type ('arg
,'action
) entry
=
36 clauses
: (regular_expression
* 'action
) list
}
38 type lexer_definition
=
40 entrypoints
: ((string list
, location
) entry
) list
;