Mercurial > projects > ddmd
view dmd/LineInitExp.d @ 187:b0d41ff5e0df
Added expandability scheme outlined in http://www.dsource.org/forums/viewtopic.php?t=5659&sid=6f2150ff5b0bffcd47512a6a7608d218
author | Abscissa |
---|---|
date | Tue, 07 Jun 2011 23:37:34 -0400 |
parents | e3afd1303184 |
children |
line wrap: on
line source
module dmd.LineInitExp; import dmd.common; import dmd.Expression; import dmd.Loc; import dmd.Scope; import dmd.DefaultInitExp; import dmd.IntegerExp; import dmd.TOK; import dmd.Type; import dmd.DDMDExtensions; class LineInitExp : DefaultInitExp { mixin insertMemberExtension!(typeof(this)); this(Loc loc) { register(); super(loc, TOK.TOKline, this.sizeof); } override Expression semantic(Scope sc) { type = Type.tint32; return this; } override Expression resolveLoc(Loc loc, Scope sc) { Expression e = new IntegerExp(loc, loc.linnum, Type.tint32); e = e.castTo(sc, type); return e; } }