Mercurial > projects > ddmd
diff dmd/StructLiteralExp.d @ 0:10317f0c89a5
Initial commit
author | korDen |
---|---|
date | Sat, 24 Oct 2009 08:42:06 +0400 |
parents | |
children | 51605de93870 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/dmd/StructLiteralExp.d Sat Oct 24 08:42:06 2009 +0400 @@ -0,0 +1,134 @@ +module dmd.StructLiteralExp; + +import dmd.Expression; +import dmd.StructDeclaration; +import dmd.backend.elem; +import dmd.InterState; +import dmd.MATCH; +import dmd.Type; +import dmd.OutBuffer; +import dmd.Loc; +import dmd.Scope; +import dmd.InlineCostState; +import dmd.IRState; +import dmd.InlineDoState; +import dmd.backend.Symbol; +import dmd.HdrGenState; +import dmd.backend.dt_t; +import dmd.InlineScanState; +import dmd.ArrayTypes; +import dmd.TOK; + + +class StructLiteralExp : Expression +{ + StructDeclaration sd; // which aggregate this is for + Expressions elements; // parallels sd->fields[] with + // NULL entries for fields to skip + + Symbol* sym; // back end symbol to initialize with literal + size_t soffset; // offset from start of s + int fillHoles; // fill alignment 'holes' with zero + + this(Loc loc, StructDeclaration sd, Expressions elements) + { + assert(false); + super(loc, TOK.init, 0); + } + + Expression syntaxCopy() + { + assert(false); + } + + Expression semantic(Scope sc) + { + assert(false); + } + + Expression getField(Type type, uint offset) + { + assert(false); + } + + int getFieldIndex(Type type, uint offset) + { + assert(false); + } + + elem* toElem(IRState* irs) + { + assert(false); + } + + bool checkSideEffect(int flag) + { + assert(false); + } + + void toCBuffer(OutBuffer buf, HdrGenState* hgs) + { + assert(false); + } + + void toMangleBuffer(OutBuffer buf) + { + assert(false); + } + + void scanForNestedRef(Scope sc) + { + assert(false); + } + + Expression optimize(int result) + { + assert(false); + } + + Expression interpret(InterState* istate) + { + assert(false); + } + + dt_t** toDt(dt_t** pdt) + { + assert(false); + } + + int isLvalue() + { + assert(false); + } + + Expression toLvalue(Scope sc, Expression e) + { + assert(false); + } + + bool canThrow() + { + assert(false); + } + + MATCH implicitConvTo(Type t) + { + assert(false); + } + + int inlineCost(InlineCostState* ics) + { + assert(false); + } + + Expression doInline(InlineDoState ids) + { + assert(false); + } + + Expression inlineScan(InlineScanState* iss) + { + assert(false); + } +} +