# HG changeset patch # User aziz # Date 1182708062 0 # Node ID ef83eea26bbd957d37a6d5fe64928c9a18a7432b # Parent 3a9daccf7d96e7bd2b4856ba5d2fdf66f63e65a7 - Added code for parsing MulAssign, Mul, ModAssign, Mod, XorAssign and Xor tokens. diff -r 3a9daccf7d96 -r ef83eea26bbd trunk/src/Lexer.d --- a/trunk/src/Lexer.d Sun Jun 24 17:19:03 2007 +0000 +++ b/trunk/src/Lexer.d Sun Jun 24 18:01:02 2007 +0000 @@ -352,7 +352,31 @@ else t.type = TOK.Tilde; goto Lcommon; - // Single character tokens + case '*': + if (p[1] == '=') { + ++p; + t.type = TOK.MulAssign; + } + else + t.type = TOK.Mul; + goto Lcommon; + case '^': + if (p[1] == '=') { + ++p; + t.type = TOK.XorAssign; + } + else + t.type = TOK.Xor; + goto Lcommon; + case '%': + if (p[1] == '=') { + ++p; + t.type = TOK.ModAssign; + } + else + t.type = TOK.Mod; + goto Lcommon; + // Single character tokens: case '(': t.type = TOK.LParen; goto Lcommon; diff -r 3a9daccf7d96 -r ef83eea26bbd trunk/src/Token.d --- a/trunk/src/Token.d Sun Jun 24 17:19:03 2007 +0000 +++ b/trunk/src/Token.d Sun Jun 24 18:01:02 2007 +0000 @@ -33,6 +33,9 @@ AndAssign, AndLogical, AndBinary, PlusAssign, PlusPlus, Plus, MinusAssign, MinusMinus, Minus, + MulAssign, Mul, + ModAssign, Mod, + XorAssign, Xor, CatAssign, Catenate, Tilde,