2008-01-09 Rodrigo Kumpera <rkumpera@novell.com>
[mono.git] / mono / metadata / class-internals.h
index b92a51eca189b554b3b1817a8318600aaa3f45a1..59299e00a6cd90a032fde0d011eb4e09c652bc96 100644 (file)
@@ -176,6 +176,7 @@ enum {
        MONO_EXCEPTION_METHOD_ACCESS = 9,
        MONO_EXCEPTION_FIELD_ACCESS = 10,
        MONO_EXCEPTION_GENERIC_SHARING_FAILED = 11,
+       MONO_EXCEPTION_BAD_IMAGE = 12
        /* add other exception type */
 };
 
@@ -516,6 +517,7 @@ typedef struct {
        MonoClass *klass; /* If kind != TYPE */
        const char *member_name; /* If kind != TYPE */
        gboolean ref_only; /* If kind == ASSEMBLY */
+       char *msg; /* If kind == BAD_IMAGE */
 } MonoLoaderError;
 
 #define mono_class_has_parent(klass,parent) (((klass)->idepth >= (parent)->idepth) && ((klass)->supertypes [(parent)->idepth - 1] == (parent)))
@@ -553,6 +555,10 @@ typedef struct {
        gulong generics_sharable_methods;
        gulong generics_unsharable_methods;
        gulong generics_shared_methods;
+       gulong minor_gc_count;
+       gulong major_gc_count;
+       gulong minor_gc_time_usecs;
+       gulong major_gc_time_usecs;
        gboolean enabled;
 } MonoStats;
 
@@ -798,6 +804,8 @@ mono_loader_set_error_method_load (const char *class_name, const char *member_na
 
 void
 mono_loader_set_error_field_load (MonoClass *klass, const char *member_name) MONO_INTERNAL;
+void
+mono_loader_set_error_bad_image (char *msg) MONO_INTERNAL;
 
 MonoException *
 mono_loader_error_prepare_exception (MonoLoaderError *error) MONO_INTERNAL;