home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 10 Tools
/
10-Tools.zip
/
ssvpar.zip
/
SSTUTOR.YCC
< prev
next >
Wrap
Text File
|
1994-11-26
|
1KB
|
50 lines
// Expression rule file
%expression Main
'[ \n\t]+' %ignore;
';' End, ';';
'\+' Plus, '+';
'\-' Minus, '-';
'\/' Div, '/';
'\*' Mult, '*';
'\*\*' Power, '**';
'\(' OParen, '(';
'\)' CParen, ')';
'[0-9]+' Number, 'n';
'[a-z_A-Z][a-z_A-Z0-9]*' Name, 'name';
'a' A, 'a';
'ab' Ab, 'ab';
'abc' Abc, 'abc';
'abcd' Abcd, 'abcd';
%prec
1, '+', %left;
1, '-', %left;
2, '*', %left;
2, '/', %left;
3, '**', %right;
%production start
Start start -> exprStatement;
StartList start -> start exprStatement;
ExprSingle exprStatement -> expr ';';
ExprError exprStatement -> %error ';';
ExprPlus expr -> expr '+' expr;
ExprMinus expr -> expr '-' expr;
ExprMult expr -> expr '*' expr;
ExprDiv expr -> expr '/' expr;
ExprPower expr -> expr '**' expr;
ExprNested expr -> '(' expr ')';
ExprName expr -> 'name';
ExprNumber expr -> 'n';
ExprA expr -> 'a';
ExprAb expr -> 'ab';
ExprAbc expr -> 'abc';
ExprAbcd expr -> 'abcd';