X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=mono%2Fmetadata%2Fexception.h;h=58fe1141600ba4b5b0a520e35ba8b928343192ef;hb=a338533425917e2749b4eaacbd5c297f271b0517;hp=f1ebe4b650e8477d72469c7a16019b30254836e9;hpb=512f47de0e6dae2cd0d20aa963d047992ae52cad;p=mono.git diff --git a/mono/metadata/exception.h b/mono/metadata/exception.h index f1ebe4b650e..58fe1141600 100644 --- a/mono/metadata/exception.h +++ b/mono/metadata/exception.h @@ -1,27 +1,39 @@ #ifndef _MONO_METADATA_EXCEPTION_H_ #define _MONO_METADATA_EXCEPTION_H_ -#ifdef MONO_USE_EXC_TABLES -#define MONO_ARCH_SAVE_REGS __builtin_unwind_init () -#else +/* here for compat: should not be used anymore */ #define MONO_ARCH_SAVE_REGS -#endif #include #include -typedef void (*MonoExceptionClassInitFunc)(MonoClass *klass); -typedef void (*MonoExceptionObjectInitFunc)(MonoObject *obj, MonoClass *klass); - -extern void -mono_exception_install_handlers (MonoExceptionClassInitFunc class_init, - MonoExceptionObjectInitFunc obj_init); +G_BEGIN_DECLS extern MonoException * mono_exception_from_name (MonoImage *image, const char* name_space, const char *name); +MonoException * +mono_exception_from_token (MonoImage *image, guint32 token); + +MonoException * +mono_exception_from_name_two_strings (MonoImage *image, const char *name_space, + const char *name, MonoString *a1, MonoString *a2); + +MonoException * +mono_exception_from_name_msg (MonoImage *image, const char *name_space, + const char *name, const char *msg); + +MonoException * +mono_exception_from_token_two_strings (MonoImage *image, guint32 token, + MonoString *a1, MonoString *a2); + +extern MonoException * +mono_exception_from_name_domain (MonoDomain *domain, MonoImage *image, + const char* name_space, + const char *name); + MonoException * mono_get_exception_divide_by_zero (void); @@ -38,20 +50,26 @@ MonoException * mono_get_exception_null_reference (void); MonoException * -mono_get_exception_execution_engine (const guchar *msg); +mono_get_exception_execution_engine (const char *msg); MonoException * mono_get_exception_thread_abort (void); MonoException * -mono_get_exception_thread_state (const guchar *msg); +mono_get_exception_thread_state (const char *msg); + +MonoException * +mono_get_exception_thread_interrupted (void); MonoException * -mono_get_exception_serialization (const guchar *msg); +mono_get_exception_serialization (const char *msg); MonoException * mono_get_exception_invalid_cast (void); +MonoException * +mono_get_exception_invalid_operation (const char *msg); + MonoException * mono_get_exception_index_out_of_range (void); @@ -59,36 +77,71 @@ MonoException * mono_get_exception_array_type_mismatch (void); MonoException * -mono_get_exception_type_load (MonoString *type_name); +mono_get_exception_type_load (MonoString *class_name, char *assembly_name); + +MonoException * +mono_get_exception_missing_method (const char *class_name, const char *member_name); + +MonoException * +mono_get_exception_missing_field (const char *class_name, const char *member_name); MonoException * -mono_get_exception_missing_method (void); +mono_get_exception_not_implemented (const char *msg); MonoException * -mono_get_exception_not_implemented (void); +mono_get_exception_not_supported (const char *msg); MonoException* -mono_get_exception_argument_null (const guchar *arg); +mono_get_exception_argument_null (const char *arg); MonoException * -mono_get_exception_argument (const guchar *arg, const guchar *msg); +mono_get_exception_argument (const char *arg, const char *msg); MonoException * -mono_get_exception_argument_out_of_range (const guchar *arg); +mono_get_exception_argument_out_of_range (const char *arg); MonoException * -mono_get_exception_io (const guchar *msg); +mono_get_exception_io (const char *msg); MonoException * mono_get_exception_file_not_found (MonoString *fname); +MonoException * +mono_get_exception_file_not_found2 (const char *msg, MonoString *fname); + MonoException * mono_get_exception_type_initialization (const gchar *type_name, MonoException *inner); MonoException * -mono_get_exception_synchronization_lock (const guchar *msg); +mono_get_exception_synchronization_lock (const char *msg); + +MonoException * +mono_get_exception_cannot_unload_appdomain (const char *msg); + +MonoException * +mono_get_exception_appdomain_unloaded (void); + +MonoException * +mono_get_exception_bad_image_format (const char *msg); + +MonoException * +mono_get_exception_bad_image_format2 (const char *msg, MonoString *fname); + +MonoException * +mono_get_exception_stack_overflow (void); + +MonoException * +mono_get_exception_out_of_memory (void); MonoException * -mono_get_exception_cannot_unload_appdomain (const guchar *msg); +mono_get_exception_field_access (void); + +MonoException * +mono_get_exception_method_access (void); + +MonoException * +mono_get_exception_reflection_type_load (MonoArray *types, MonoArray *exceptions); + +G_END_DECLS #endif /* _MONO_METADATA_EXCEPTION_H_ */