6 let trim s = S.sub s 1 (S.length s - 2)
8 let out s = if !O.debug_lexer then prerr_endline s
11 let SPC = ['\r' '\n' '\t' ' ']+
13 let STR = QT [^'"']* QT
17 | SPC { token lexbuf }
18 | STR as s { out s; TP.TEXT (trim s) }
19 | NUM as s { out s; TP.NUM (int_of_string s) }
20 | "{" { out "{"; TP.OC }
21 | "}" { out "}"; TP.CC }
22 | "[" { out "["; TP.OB }
23 | "]" { out "]"; TP.CB }
24 | "*" { out "*"; TP.SR }
25 | "name" { out "name"; TP.NAME }
26 | "table" { out "table"; TP.TABLE }
27 | "class" { out "class"; TP.CSS }
28 | "(*" { block lexbuf; token lexbuf }
32 | "(*" { block lexbuf; block lexbuf }
33 | STR { block lexbuf }