Mercurial > projects > dang
diff ast/Exp.d @ 185:7b274cfdc1dc
Added support for array literals. Codegen is broken, though.
author | Anders Johnsen <skabet@gmail.com> |
---|---|
date | Fri, 25 Jul 2008 12:18:05 +0200 |
parents | 8ea749b7da91 |
children | fda35d57847e |
line wrap: on
line diff
--- a/ast/Exp.d Fri Jul 25 11:04:00 2008 +0200 +++ b/ast/Exp.d Fri Jul 25 12:18:05 2008 +0200 @@ -36,6 +36,7 @@ StaticArrayTypeExp, PointerTypeExp, FunctionTypeExp, + ArrayLiteralExp, } abstract class Exp @@ -747,3 +748,22 @@ private DType myType; } +class ArrayLiteralExp : Exp +{ + this(Exp[] exps, SLoc begin, SLoc end) + { + super(ExpType.ArrayLiteralExp, begin); + this.exps = exps; + this.begin = begin; + this.end = end; + } + + override DType type() + { + return exps[0].type.getAsStaticArray(exps.length); + } + + Exp[] exps; + SLoc begin, end; +} +