summaryrefslogtreecommitdiff
path: root/testsuite/tests/tool-lexyacc/csets.mll
blob: a1aefeee43816319a49d9c1578cec091db833d09 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
(* TEST
 ocamllex_flags = " -q ";
*)

let digit = ['0'-'9']
let alpha = ['a'-'z']
let alpha' = (digit | alpha) # digit

rule read = parse
| alpha'+ as lxm { Some lxm }
| digit+ as lxm { Some lxm }
| eof { None }

{
let () =
  let rec aux lexbuf =
    match read lexbuf with
    | Some x -> x :: aux lexbuf
    | None -> []
  in
  List.iter print_endline (aux (Lexing.from_string "abc0345ghz"))
}