* list :
[mono.git] / mono / metadata / reflection.h
index d58ee3fbdf7650a05e1883412a0d1d7b9cf4a26d..e01a2bbf81b2c3b2ac8e0edbff9fa0205072d127 100644 (file)
@@ -124,13 +124,11 @@ typedef struct {
 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 {
@@ -192,6 +190,7 @@ typedef struct {
 
 typedef struct {
        MonoObject object;
+       MonoMethod *mhandle;
        MonoReflectionILGen *ilgen;
        MonoArray *parameters;
        guint32 attrs;
@@ -266,6 +265,8 @@ typedef struct {
        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 */
@@ -293,6 +294,13 @@ typedef struct {
        MonoString *dir;
        MonoArray *cattrs;
        MonoArray *resources;
+       MonoString *keyfile;
+       MonoString *version;
+       MonoString *culture;
+       guint32 algid;
+       guint32 flags;
+       guint32 pekind;
+       MonoBoolean delay_sign;
 } MonoReflectionAssemblyBuilder;
 
 typedef struct {
@@ -325,7 +333,7 @@ typedef struct {
 typedef struct {
        MonoObject      obj;
        MonoImage  *image;
-       MonoObject *assembly;
+       MonoReflectionAssembly *assembly;
        MonoString *fqname;
        MonoString *name;
        MonoString *scopename;
@@ -367,6 +375,16 @@ typedef struct {
        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 {
@@ -419,6 +437,7 @@ guint32       mono_image_insert_string (MonoReflectionAssemblyBuilder *assembly,
 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, MonoClass *refclass);
 MonoReflectionField*    mono_field_get_object    (MonoDomain *domain, MonoClass *klass, MonoClassField *field);