virtual public void enum_declaration(enum_declaration ast, int indent) { EmitattributeSectionList(ast.attrs, indent); EmitModifiers(ast.mods, indent, " "); Write("enum {0} ", ast.id.str); if (ast.ty != null) { Write(": "); visit(ast.ty); } WriteLine(" {{"); foreach (enum_member_declaration d in ast.body) { EmitattributeSectionList(d.attrs, indent + 1); Write("{0}", indent + 1, d.id.str); if (d.expr != null) { Write("="); visit(d.expr); } WriteLine(","); } WriteLine("}};", indent); }
void enum_declaration(enum_declaration ast, ArrayList list) { list.Add(new Pair(ast.id.str, ast)); }