public override bool Define ()
{
+ if (!ResolveMemberType ())
+ return false;
+
const FieldAttributes attr = FieldAttributes.Public | FieldAttributes.Static | FieldAttributes.Literal;
FieldBuilder = Parent.TypeBuilder.DefineField (Name, MemberType, attr);
Parent.MemberCache.AddMember (FieldBuilder, this);
return true;
}
- protected override bool DoDefineMembers ()
+ public override bool Define ()
{
member_cache = new MemberCache (TypeManager.enum_type, this);
DefineContainerMembers (constants);
return true;
}
- //
- // Used for error reporting only
- //
- public EnumMember GetDefinition (object value)
+ public override bool IsUnmanagedType ()
{
- foreach (EnumMember e in defined_names.Values) {
- if (value.Equals (e.Value))
- return e;
- }
-
- throw new ArgumentOutOfRangeException (value.ToString ());
+ return true;
}
-
+
public Type UnderlyingType {
get {
return base_type.Type;