Mercurial > projects > dil
diff trunk/src/Parser.d @ 77:7e21c4df1c02
- Implemented parseMulExpression().
- Added stub for parseUnaryExpression().
- Added classes DivExpression and ModExpression.
author | aziz |
---|---|
date | Sun, 01 Jul 2007 19:39:03 +0000 |
parents | a85f9edf6ce7 |
children | f043759fb59a |
line wrap: on
line diff
--- a/trunk/src/Parser.d Sun Jul 01 19:28:02 2007 +0000 +++ b/trunk/src/Parser.d Sun Jul 01 19:39:03 2007 +0000 @@ -253,9 +253,26 @@ Expression parseMulExpression() { + auto e = parseUnaryExpression(); + while (1) + { + switch (lx.token.type) + { + case T.Mul: nT(); e = new MulExpression(e, parseUnaryExpression()); break; + case T.Div: nT(); e = new DivExpression(e, parseUnaryExpression()); break; + case T.Mod: nT(); e = new ModExpression(e, parseUnaryExpression()); break; + default: break; + } + break; + } return new Expression(); } + Expression parseUnaryExpression() + { + return new Expression; + } + void error(MID id, ...) { errors ~= new Information(Information.Type.Parser, id, lx.loc, arguments(_arguments, _argptr));