26#define YY_USER_ACTION yylloc->first_line = yylloc->last_line; \
27 yylloc->first_column = yylloc->last_column + 1; \
28 yylloc->last_column += yyleng;
31#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED && defined WEBIDL_STYPE_IS_DECLARED
32#define YYSTYPE WEBIDL_STYPE
35#if ! defined YYLTYPE && ! defined YYLTYPE_IS_DECLARED && defined WEBIDL_LTYPE_IS_DECLARED
36#define YYLTYPE WEBIDL_LTYPE
43%option never-interactive
46%option bison-locations
48%option prefix="webidl_"
63USP (\xe1\x9a\x80)|(\xe1\xa0\x8e)|(\xe2\x80[\x80-\x8a])|(\xe2\x80\xaf)|(\xe2\x81\x9f)|(\xe3\x80\x80)
78whitespace ([ \t\v\f]|{NBSP}|{USP})
79multicomment \/\*(([^*])|(\*[^/]))*\*\/
81lineend ([\n\r]|{LS}|{PS})
87hexint 0(x|X){hexdigit}+
89decimalint 0|([\+\-]?[1-9][0-9]*)
94decimalexponent (e|E)[\+\-]?[0-9]+
95decimalfloat ({decimalint}\.[0-9]*{decimalexponent}?)|(\.[0-9]+{decimalexponent}?)|({decimalint}{decimalexponent}?)
98hexescseq x{hexdigit}{2}
99unicodeescseq u{hexdigit}{4}
100characterescseq ['\"\\bfnrtv]|[^'\"\\bfnrtv\n\r]
101escseq {characterescseq}|0|{hexescseq}|{unicodeescseq}
102quotedstring ([^\"\\\n\r]|\\{escseq})
105identifier [A-Z_a-z][0-9A-Z_a-z]*
108other [^\t\n\r 0-9A-Z_a-z]
111poundsign ^{whitespace}*#
118{lineend} if (
yytext[0] !=
'\r') {
254 if (strncmp(
yytext,
"/**", 3) == 0)
268 }
while (c !=
'\n' && c !=
'\r' && c != EOF);
277{other} return (
int)
yytext[0];
286 fprintf(stderr,
"Unable to open include %s\n",
yytext);
#define yypush_buffer_state
#define YY_CURRENT_BUFFER
#define yypop_buffer_state