Mercurial > projects > ddmd
comparison dmd/TupleExp.d @ 56:51605de93870
TupleExp.optimize
UnrolledLoopStatement.ctor
UnrolledLoopStatement.semantic
UnrolledLoopStatement.blockExit
OrOrExp.checkSideEffect
FuncExp.syntaxCopy
FuncLiteralDeclaration.syntaxCopy
WhileStatement.hasBreak
StructInitializer.toExpression
StructLiteralExp.ctor
StructLiteralExp.optimize
BinExp.commonSemanticAssign
ModAssignExp.opId
Argument.isLazyArray
CommaExp.implicitConvTo
CommaExp.castTo
TypeClass.isBaseOf
createTypeInfoArray
TypeTuple.getTypeInfoDeclaration
TypeInfoTupleDeclaration.ctor
TypeNext.constConv
XorExp.implicitConvTo
TemplateParameter.isTemplateValueParameter
author | korDen |
---|---|
date | Sat, 21 Aug 2010 14:16:53 +0400 |
parents | ccbc1e0bb3f0 |
children | cab4c37afb89 |
comparison
equal
deleted
inserted
replaced
55:8c2c7b7579f8 | 56:51605de93870 |
---|---|
2 | 2 |
3 import dmd.Expression; | 3 import dmd.Expression; |
4 import dmd.TupleDeclaration; | 4 import dmd.TupleDeclaration; |
5 import dmd.backend.elem; | 5 import dmd.backend.elem; |
6 import dmd.InterState; | 6 import dmd.InterState; |
7 import dmd.WANT; | |
7 import dmd.Type; | 8 import dmd.Type; |
8 import dmd.OutBuffer; | 9 import dmd.OutBuffer; |
9 import dmd.Loc; | 10 import dmd.Loc; |
10 import dmd.Scope; | 11 import dmd.Scope; |
11 import dmd.InlineCostState; | 12 import dmd.InlineCostState; |
205 return f; | 206 return f; |
206 } | 207 } |
207 | 208 |
208 Expression optimize(int result) | 209 Expression optimize(int result) |
209 { | 210 { |
210 assert(false); | 211 for (size_t i = 0; i < exps.dim; i++) |
212 { | |
213 Expression e = cast(Expression)exps.data[i]; | |
214 | |
215 e = e.optimize(WANTvalue | (result & WANTinterpret)); | |
216 exps.data[i] = cast(void*)e; | |
217 } | |
218 return this; | |
211 } | 219 } |
212 | 220 |
213 Expression interpret(InterState* istate) | 221 Expression interpret(InterState* istate) |
214 { | 222 { |
215 assert(false); | 223 assert(false); |