push.fs.re
来自「a little DFA compiler.」· RE 代码 · 共 55 行
RE
55 行
uint32_t push(){ // The scanner starts here #define YYLIMIT limit #define YYCURSOR cursor #define YYMARKER marker #define YYCTYPE uint8_t #define SKIP(x) { start = cursor; goto yy0; } #define SEND(x) { send(x); SKIP(); } #define YYFILL(n) { goto fill; } #define YYGETSTATE() state #define YYSETSTATE(x) { state = (x); }start: /*!re2c re2c:startlabel = 1; eol = "\n"; eof = "\000"; digit = [0-9]; integer = digit+; alpha = [A-Za-z_]; any = [\000-\377]; space = [ \h\t\v\f\r]; "if" { SEND(kIf); } "for" { SEND(kFor); } "else" { SEND(kElse); } "goto" { SEND(kGoto); } "break" { SEND(kBreak); } "while" { SEND(kWhile); } "return" { SEND(kReturn); } alpha (alpha|digit)* { SEND(kIdentifier); } integer { SEND(kDecimalConstant);} "=" { SEND(kEqual); } "(" { SEND(kLeftParen); } ")" { SEND(kRightParen); } "-" { SEND(kMinus); } "+" { SEND(kPlus); } "*" { SEND(kStar); } "/" { SEND(kSlash); } eol { SKIP(); } space { SKIP(); } eof { send(kEOF); return 1; } any { SEND(kUnknown); } */fill: return 0;}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?