+Wed Aug 14 17:38:41 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * TypeBuilder.cs: ReflectedType and CreateType fixes.
+
Thu Aug 8 10:25:51 CEST 2002 Paolo Molaro <lupus@ximian.com>
* AssemblyBuilder.cs: added API to embed managed resources.
private ModuleBuilder pmodule;
private int class_size;
private PackingSize packing_size;
+ private Type created;
public const int UnspecifiedTypeSize = -1;
public PackingSize PackingSize {
get {return packing_size;}
}
- public override Type ReflectedType {get {return parent;}}
+ public override Type ReflectedType {get {return nesting_type;}}
public override MemberTypes MemberType {
get {return MemberTypes.TypeInfo;}
}
throw new NotImplementedException ();
}
+ [MethodImplAttribute(MethodImplOptions.InternalCall)]
+ private extern Type create_runtime_class (TypeBuilder tb);
+
public Type CreateType() {
+ /* handle nesting_type */
+ if (created != null)
+ throw new InvalidOperationException ("type already created");
if (methods != null) {
foreach (MethodBuilder method in methods) {
method.fixup ();
ctor.fixup ();
}
}
+ created = create_runtime_class (this);
return this;
}