我正在为一个类编写一个JISON文件,并尝试使用非终结符代替声明操作员的关联性,但是完全忘记了错误的真正含义,因为这是一次分配给一个类的任务,而且我还没有找到令人惊讶的例子在此用例中使用非终结符。
我的JISON代码:
/* lexical grammar */
%lex
%%
\s+ /* skip whitespace */
[0-9]+("."[0-9]+)?\b return 'NUMBER'
"*" return '*'
"/" return '/'
"-" return '-'
"+" return '+'
"^" return '^'
"!" return '!'
"%" return '%'
"(" return '('
")" return ')'
"PI" return 'PI'
"E" return 'E'
<<EOF>> return 'EOF'
. return 'INVALID'
/lex
%start expressions
%% /* language grammar */
expressions
: e EOF
{ typeof console !== 'undefined' ? console.log($1) : print($1);
return $1; }
; …Run Code Online (Sandbox Code Playgroud)