MonoObject object;
MonoMethod *method;
MonoString *name;
+ MonoReflectionType *reftype;
};
struct _MonoDelegate {
typedef struct {
MonoString *name;
MonoString *name_space;
- MonoReflectionType *parent;
MonoReflectionType *etype;
+ MonoReflectionType *nested_in;
MonoReflectionAssembly *assembly;
- guint32 attrs;
guint32 rank;
- MonoBoolean isbyref, ispointer, isprimitive;
+ MonoBoolean isprimitive;
} MonoTypeInfo;
typedef struct {
typedef struct {
MonoObject object;
+ MonoMethod *mhandle;
MonoReflectionILGen *ilgen;
MonoArray *parameters;
guint32 attrs;
GHashTable *handleref;
GList *array_methods;
MonoGHashTable *token_fixups;
+ char *strong_name;
+ guint32 strong_name_size;
MonoDynamicStream pefile;
MonoDynamicStream sheap;
MonoDynamicStream code; /* used to store method headers and bytecode */
+ MonoDynamicStream resources; /* managed embedded resources */
MonoDynamicStream us;
MonoDynamicStream blob;
MonoDynamicStream tstream;
MonoString *dir;
MonoArray *cattrs;
MonoArray *resources;
+ MonoString *keyfile;
+ MonoString *version;
+ MonoString *culture;
+ guint32 algid;
+ guint32 flags;
+ guint32 pekind;
+ MonoBoolean delay_sign;
} MonoReflectionAssemblyBuilder;
typedef struct {
typedef struct {
MonoObject obj;
MonoImage *image;
- MonoObject *assembly;
+ MonoReflectionAssembly *assembly;
MonoString *fqname;
MonoString *name;
MonoString *scopename;
MonoString *codebase;
gint32 major, minor, build, revision;
/* FIXME: add missing stuff */
+/* CultureInfo cultureinfo;
+ AssemblyNameFlags flags;
+ AssemblyHashAlgorithm hashalg;
+ StrongNameKeyPair keypair;
+ AssemblyVersionCompatibility versioncompat;*/
+ MonoObject *cultureInfo;
+ MonoObject *flags;
+ MonoObject *hashalg;
+ MonoObject *keypair;
+ MonoObject *versioncompat;
} MonoReflectionAssemblyName;
typedef struct {
guint32 mono_image_create_token (MonoDynamicAssembly *assembly, MonoObject *obj);
MonoReflectionAssembly* mono_assembly_get_object (MonoDomain *domain, MonoAssembly *assembly);
+MonoReflectionModule* mono_module_get_object (MonoDomain *domain, MonoImage *image);
MonoReflectionType* mono_type_get_object (MonoDomain *domain, MonoType *type);
-MonoReflectionMethod* mono_method_get_object (MonoDomain *domain, MonoMethod *method);
+MonoReflectionMethod* mono_method_get_object (MonoDomain *domain, MonoMethod *method, MonoClass *refclass);
MonoReflectionField* mono_field_get_object (MonoDomain *domain, MonoClass *klass, MonoClassField *field);
MonoReflectionProperty* mono_property_get_object (MonoDomain *domain, MonoClass *klass, MonoProperty *property);
MonoReflectionEvent* mono_event_get_object (MonoDomain *domain, MonoClass *klass, MonoEvent *event);
void mono_reflection_create_internal_class (MonoReflectionTypeBuilder *tb);
+MonoReflectionType* mono_reflection_create_runtime_class (MonoReflectionTypeBuilder *tb);
+
MonoArray *mono_reflection_sighelper_get_signature_local (MonoReflectionSigHelper *sig);
MonoArray *mono_reflection_sighelper_get_signature_field (MonoReflectionSigHelper *sig);