3 QUOTED_STRING \"([^\"]+|\\.)*\"
4 UNQUOTED_STRING {ALNUM}+
5 HEX_NUMBER 0[xX][0-9a-fA-F]+
7 DEC_NUMBER [\+\-]?[0-9]+
8 FLOAT_NUMBER [\+\-]?[0-9]*\.[0-9]+([eE][\+\-][0-9]+)?
9 NUMBER ({FLOAT_NUMBER}|{HEX_NUMBER}|{OCT_NUMBER}|{DEC_NUMBER})
10 BOOL_TRUE (true|yes|on)
11 BOOL_FALSE (false|no|off)
16 {COMMENT} {/* nothing */}
20 "<" {return (OPENBRAC);}
21 ">" {return (CLOSEBRAC);}
22 {NUMBER} {yylval.number = strtod (yytext, NULL); return (NUMBER);}
23 {BOOL_TRUE} {yylval.boolean = 1; return (TRUE);}
24 {BOOL_FALSE} {yylval.boolean = 0; return (FALSE);}
26 {QUOTED_STRING} {yylval.string = yytext; return (QUOTED_STRING);}
27 {UNQUOTED_STRING} {yylval.string = yytext; return (UNQUOTED_STRING);}