1// re2c $INPUT -o $OUTPUT --input custom 2bool lex (const char * cursor, const char * const limit) 3{ 4 const char * marker; 5 const char * ctxmarker; 6# define YYCTYPE char 7# define YYPEEK() *cursor 8# define YYSKIP() ++cursor 9# define YYBACKUP() marker = cursor 10# define YYBACKUPCTX() ctxmarker = cursor 11# define YYRESTORE() cursor = marker 12# define YYRESTORECTX() cursor = ctxmarker 13# define YYLESSTHAN(n) limit - cursor < n 14# define YYFILL(n) {} 15 /*!re2c 16 "int buffer " / "[" [0-9]+ "]" { return true; } 17 * { return false; } 18 */ 19} 20 21int main () 22{ 23 char buffer [] = "int buffer [1024]"; 24 return !lex (buffer, buffer + sizeof (buffer)); 25} 26