summaryrefslogtreecommitdiff
path: root/testsuite/tests/tool-lexyacc/csets.mll
blob: 91e9e35fb59d9ebc61d80967e4ff7c6da952de77 (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"))
}