2010-03-12 Rodrigo Kumpera <rkumpera@novell.com>
[mono.git] / mono / metadata / exception.h
blobbeb508a6a91d4e8113d602a91650e5675f9f5454
1 #ifndef _MONO_METADATA_EXCEPTION_H_
2 #define _MONO_METADATA_EXCEPTION_H_
4 /* here for compat: should not be used anymore */
5 #define MONO_ARCH_SAVE_REGS
7 #include <mono/metadata/object.h>
8 #include <mono/metadata/image.h>
10 MONO_BEGIN_DECLS
12 extern MonoException *
13 mono_exception_from_name (MonoImage *image,
14 const char* name_space,
15 const char *name);
17 MonoException *
18 mono_exception_from_token (MonoImage *image, uint32_t token);
20 MonoException *
21 mono_exception_from_name_two_strings (MonoImage *image, const char *name_space,
22 const char *name, MonoString *a1, MonoString *a2);
24 MonoException *
25 mono_exception_from_name_msg (MonoImage *image, const char *name_space,
26 const char *name, const char *msg);
28 MonoException *
29 mono_exception_from_token_two_strings (MonoImage *image, uint32_t token,
30 MonoString *a1, MonoString *a2);
32 extern MonoException *
33 mono_exception_from_name_domain (MonoDomain *domain, MonoImage *image,
34 const char* name_space,
35 const char *name);
37 MonoException *
38 mono_get_exception_divide_by_zero (void);
40 MonoException *
41 mono_get_exception_security (void);
43 MonoException *
44 mono_get_exception_arithmetic (void);
46 MonoException *
47 mono_get_exception_overflow (void);
49 MonoException *
50 mono_get_exception_null_reference (void);
52 MonoException *
53 mono_get_exception_execution_engine (const char *msg);
55 MonoException *
56 mono_get_exception_thread_abort (void);
58 MonoException *
59 mono_get_exception_thread_state (const char *msg);
61 MonoException *
62 mono_get_exception_thread_interrupted (void);
64 MonoException *
65 mono_get_exception_serialization (const char *msg);
67 MonoException *
68 mono_get_exception_invalid_cast (void);
70 MonoException *
71 mono_get_exception_invalid_operation (const char *msg);
73 MonoException *
74 mono_get_exception_index_out_of_range (void);
76 MonoException *
77 mono_get_exception_array_type_mismatch (void);
79 MonoException *
80 mono_get_exception_type_load (MonoString *class_name, char *assembly_name);
82 MonoException *
83 mono_get_exception_missing_method (const char *class_name, const char *member_name);
85 MonoException *
86 mono_get_exception_missing_field (const char *class_name, const char *member_name);
88 MonoException *
89 mono_get_exception_not_implemented (const char *msg);
91 MonoException *
92 mono_get_exception_not_supported (const char *msg);
94 MonoException*
95 mono_get_exception_argument_null (const char *arg);
97 MonoException *
98 mono_get_exception_argument (const char *arg, const char *msg);
100 MonoException *
101 mono_get_exception_argument_out_of_range (const char *arg);
103 MonoException *
104 mono_get_exception_io (const char *msg);
106 MonoException *
107 mono_get_exception_file_not_found (MonoString *fname);
109 MonoException *
110 mono_get_exception_file_not_found2 (const char *msg, MonoString *fname);
112 MonoException *
113 mono_get_exception_type_initialization (const char *type_name, MonoException *inner);
115 MonoException *
116 mono_get_exception_synchronization_lock (const char *msg);
118 MonoException *
119 mono_get_exception_cannot_unload_appdomain (const char *msg);
121 MonoException *
122 mono_get_exception_appdomain_unloaded (void);
124 MonoException *
125 mono_get_exception_bad_image_format (const char *msg);
127 MonoException *
128 mono_get_exception_bad_image_format2 (const char *msg, MonoString *fname);
130 MonoException *
131 mono_get_exception_stack_overflow (void);
133 MonoException *
134 mono_get_exception_out_of_memory (void);
136 MonoException *
137 mono_get_exception_field_access (void);
139 MonoException *
140 mono_get_exception_method_access (void);
142 MonoException *
143 mono_get_exception_reflection_type_load (MonoArray *types, MonoArray *exceptions);
145 MONO_END_DECLS
147 #endif /* _MONO_METADATA_EXCEPTION_H_ */