Mercurial > projects > ddmd
view dmd/EnumMember.d @ 72:2e2a5c3f943a
reduced warnings by adding override to the methods
think this also normalizes different line endings used all over the place
author | Trass3r |
---|---|
date | Sat, 28 Aug 2010 16:19:48 +0200 |
parents | 1628b221808d |
children | 43073c7c7769 |
line wrap: on
line source
module dmd.EnumMember; import dmd.Dsymbol; import dmd.Expression; import dmd.Type; import dmd.Loc; import dmd.Identifier; import dmd.Scope; import dmd.OutBuffer; import dmd.HdrGenState; class EnumMember : Dsymbol { Expression value; Type type; this(Loc loc, Identifier id, Expression value, Type type) { super(id); this.value = value; this.type = type; this.loc = loc; } override Dsymbol syntaxCopy(Dsymbol s) { Expression e = null; if (value) e = value.syntaxCopy(); Type t = null; if (type) t = type.syntaxCopy(); EnumMember em; if (s) { em = cast(EnumMember)s; em.loc = loc; em.value = e; em.type = t; } else em = new EnumMember(loc, ident, e, t); return em; } override void toCBuffer(OutBuffer buf, HdrGenState* hgs) { if (type) type.toCBuffer(buf, ident, hgs); else buf.writestring(ident.toChars()); if (value) { buf.writestring(" = "); value.toCBuffer(buf, hgs); } } override string kind() { return "enum member"; } override void emitComment(Scope sc) { assert(false); } override void toDocBuffer(OutBuffer buf) { assert(false); } override EnumMember isEnumMember() { return this; } }