1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
|
// Generated by re2js
// re2js $INPUT -o $OUTPUT
function lex(yyinput) {
let yycursor = 0;
{
let yych = 0
let yystate = 0
yyl: while (true) {
switch (yystate) {
case 0:
yych = yyinput.charCodeAt(yycursor)
yycursor += 1;
switch (yych) {
case 0x31:
case 0x32:
case 0x33:
case 0x34:
case 0x35:
case 0x36:
case 0x37:
case 0x38:
case 0x39:
yystate = 2
continue yyl
default:
yystate = 1
continue yyl
}
case 1:
{ return false; }
case 2:
yych = yyinput.charCodeAt(yycursor)
switch (yych) {
case 0x30:
case 0x31:
case 0x32:
case 0x33:
case 0x34:
case 0x35:
case 0x36:
case 0x37:
case 0x38:
case 0x39:
yycursor += 1;
yystate = 2
continue yyl
default:
yystate = 3
continue yyl
}
case 3:
{ return true; }
default:
throw "internal lexer error"
}
}
}
}
if (!lex("1234\0")) {
throw "error!"
}
|