scanner.l

来自「一个开源的JAVA虚拟机」· L 代码 · 共 31 行

L
31
字号
%{#include <string.h>#include <jpr/type.h>#include "parser.tab.h"%}%%[[:digit:]]+   { yylval.index = atoi(yytext); return TOK_INDEX; }\"[^\"]*\"     { size_t len = strlen(yytext)-2; char *buf = malloc(len); strncpy(buf, yytext+1, len); buf[len] = '\0'; yylval.utf8 = buf; return TOK_UTF8; }constant       return TOK_CONSTANT;class          return TOK_CLASS;field          return TOK_FIELD;method         return TOK_METHOD;attribute      return TOK_ATTRIBUTE;\[             return TOK_LBRACKET;\]             return TOK_RBRACKET;[ \t\n]*       /* ignore space */        %%

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?