Mercurial > projects > ddmd
comparison dmd/expression/Util.d @ 173:d237b38b5858
Small changes
author | korDen |
---|---|
date | Sun, 10 Oct 2010 01:55:35 +0400 |
parents | 2e2ed2632ccc |
children | af724d3510d7 |
comparison
equal
deleted
inserted
replaced
172:5a9a88e919f9 | 173:d237b38b5858 |
---|---|
10 import dmd.LINK; | 10 import dmd.LINK; |
11 import dmd.NullExp; | 11 import dmd.NullExp; |
12 import dmd.SymOffExp; | 12 import dmd.SymOffExp; |
13 import dmd.ExpInitializer; | 13 import dmd.ExpInitializer; |
14 import dmd.Lexer; | 14 import dmd.Lexer; |
15 import dmd.AddExp; | |
16 import dmd.MinExp; | |
17 import dmd.MulExp; | |
18 import dmd.DivExp; | |
19 import dmd.ModExp; | |
20 import dmd.AndExp; | |
21 import dmd.OrExp; | |
22 import dmd.ShlExp; | |
23 import dmd.ShrExp; | |
24 import dmd.UshrExp; | |
25 import dmd.XorExp; | |
15 import dmd.TypeSArray; | 26 import dmd.TypeSArray; |
16 import dmd.TypeArray; | 27 import dmd.TypeArray; |
17 import dmd.VarDeclaration; | 28 import dmd.VarDeclaration; |
18 import dmd.VoidInitializer; | 29 import dmd.VoidInitializer; |
19 import dmd.DeclarationExp; | 30 import dmd.DeclarationExp; |
1844 } | 1855 } |
1845 if (t.isimaginary()) | 1856 if (t.isimaginary()) |
1846 buf.writeByte('i'); | 1857 buf.writeByte('i'); |
1847 } | 1858 } |
1848 } | 1859 } |
1860 | |
1861 Expression opAssignToOp(Loc loc, TOK op, Expression e1, Expression e2) | |
1862 { | |
1863 Expression e; | |
1864 | |
1865 switch (op) | |
1866 { | |
1867 case TOK.TOKaddass: e = new AddExp(loc, e1, e2); break; | |
1868 case TOK.TOKminass: e = new MinExp(loc, e1, e2); break; | |
1869 case TOK.TOKmulass: e = new MulExp(loc, e1, e2); break; | |
1870 case TOK.TOKdivass: e = new DivExp(loc, e1, e2); break; | |
1871 case TOK.TOKmodass: e = new ModExp(loc, e1, e2); break; | |
1872 case TOK.TOKandass: e = new AndExp(loc, e1, e2); break; | |
1873 case TOK.TOKorass: e = new OrExp (loc, e1, e2); break; | |
1874 case TOK.TOKxorass: e = new XorExp(loc, e1, e2); break; | |
1875 case TOK.TOKshlass: e = new ShlExp(loc, e1, e2); break; | |
1876 case TOK.TOKshrass: e = new ShrExp(loc, e1, e2); break; | |
1877 case TOK.TOKushrass: e = new UshrExp(loc, e1, e2); break; | |
1878 default: assert(0); | |
1879 } | |
1880 return e; | |
1881 } |