1 #ifndef _MONO_METADATA_EXCEPTION_H_
2 #define _MONO_METADATA_EXCEPTION_H_
4 #include <mono/metadata/object.h>
5 #include <mono/metadata/image.h>
9 extern MONO_API MonoException *
10 mono_exception_from_name (MonoImage *image,
11 const char* name_space,
14 MONO_API MonoException *
15 mono_exception_from_token (MonoImage *image, uint32_t token);
17 MONO_API MonoException *
18 mono_exception_from_name_two_strings (MonoImage *image, const char *name_space,
19 const char *name, MonoString *a1, MonoString *a2);
21 MONO_API MonoException *
22 mono_exception_from_name_msg (MonoImage *image, const char *name_space,
23 const char *name, const char *msg);
25 MONO_API MonoException *
26 mono_exception_from_token_two_strings (MonoImage *image, uint32_t token,
27 MonoString *a1, MonoString *a2);
29 extern MONO_API MonoException *
30 mono_exception_from_name_domain (MonoDomain *domain, MonoImage *image,
31 const char* name_space,
34 MONO_API MonoException *
35 mono_get_exception_divide_by_zero (void);
37 MONO_API MonoException *
38 mono_get_exception_security (void);
40 MONO_API MonoException *
41 mono_get_exception_arithmetic (void);
43 MONO_API MonoException *
44 mono_get_exception_overflow (void);
46 MONO_API MonoException *
47 mono_get_exception_null_reference (void);
49 MONO_API MonoException *
50 mono_get_exception_execution_engine (const char *msg);
52 MONO_API MonoException *
53 mono_get_exception_thread_abort (void);
55 MONO_API MonoException *
56 mono_get_exception_thread_state (const char *msg);
58 MONO_API MonoException *
59 mono_get_exception_thread_interrupted (void);
61 MONO_API MonoException *
62 mono_get_exception_serialization (const char *msg);
64 MONO_API MonoException *
65 mono_get_exception_invalid_cast (void);
67 MONO_API MonoException *
68 mono_get_exception_invalid_operation (const char *msg);
70 MONO_API MonoException *
71 mono_get_exception_index_out_of_range (void);
73 MONO_API MonoException *
74 mono_get_exception_array_type_mismatch (void);
76 MONO_API MonoException *
77 mono_get_exception_type_load (MonoString *class_name, char *assembly_name);
79 MONO_API MonoException *
80 mono_get_exception_missing_method (const char *class_name, const char *member_name);
82 MONO_API MonoException *
83 mono_get_exception_missing_field (const char *class_name, const char *member_name);
85 MONO_API MonoException *
86 mono_get_exception_not_implemented (const char *msg);
88 MONO_API MonoException *
89 mono_get_exception_not_supported (const char *msg);
91 MONO_API MonoException*
92 mono_get_exception_argument_null (const char *arg);
94 MONO_API MonoException *
95 mono_get_exception_argument (const char *arg, const char *msg);
97 MONO_API MonoException *
98 mono_get_exception_argument_out_of_range (const char *arg);
100 MONO_API MonoException *
101 mono_get_exception_io (const char *msg);
103 MONO_API MonoException *
104 mono_get_exception_file_not_found (MonoString *fname);
106 MONO_API MonoException *
107 mono_get_exception_file_not_found2 (const char *msg, MonoString *fname);
109 MONO_RT_EXTERNAL_ONLY
110 MONO_API MonoException *
111 mono_get_exception_type_initialization (const char *type_name, MonoException *inner);
113 MONO_API MonoException *
114 mono_get_exception_synchronization_lock (const char *msg);
116 MONO_API MonoException *
117 mono_get_exception_cannot_unload_appdomain (const char *msg);
119 MONO_API MonoException *
120 mono_get_exception_appdomain_unloaded (void);
122 MONO_API MonoException *
123 mono_get_exception_bad_image_format (const char *msg);
125 MONO_API MonoException *
126 mono_get_exception_bad_image_format2 (const char *msg, MonoString *fname);
128 MONO_API MonoException *
129 mono_get_exception_stack_overflow (void);
131 MONO_API MonoException *
132 mono_get_exception_out_of_memory (void);
134 MONO_API MonoException *
135 mono_get_exception_field_access (void);
137 MONO_API MonoException *
138 mono_get_exception_method_access (void);
140 MONO_RT_EXTERNAL_ONLY
141 MONO_API MonoException *
142 mono_get_exception_reflection_type_load (MonoArray *types, MonoArray *exceptions);
144 MONO_RT_EXTERNAL_ONLY
145 MONO_API MonoException *
146 mono_get_exception_runtime_wrapped (MonoObject *wrapped_exception);
150 #endif /* _MONO_METADATA_EXCEPTION_H_ */