Added the MembershipPasswordAttribute class and associated unit tests
[mono-project.git] / mono / utils / mono-error.h
blob1da46d6f24025414c314a3824850f4827537c164
1 #ifndef __MONO_ERROR_H__
2 #define __MONO_ERROR_H__
4 #include <mono/utils/mono-publib.h>
6 enum {
7 /*
8 The supplied strings were dup'd by means of calling mono_error_dup_strings.
9 */
10 MONO_ERROR_FREE_STRINGS = 0x0001,
13 Something happened while processing the error and the resulting message is incomplete.
15 MONO_ERROR_INCOMPLETE = 0x0002
18 enum {
19 MONO_ERROR_NONE = 0,
20 MONO_ERROR_MISSING_METHOD = 1,
21 MONO_ERROR_MISSING_FIELD = 2,
22 MONO_ERROR_TYPE_LOAD = 3,
23 MONO_ERROR_FILE_NOT_FOUND = 4,
24 MONO_ERROR_BAD_IMAGE = 5,
25 MONO_ERROR_OUT_OF_MEMORY = 6,
26 MONO_ERROR_ARGUMENT = 7,
27 MONO_ERROR_NOT_VERIFIABLE = 8,
29 * This is a generic error mechanism is you need to raise an arbitrary corlib exception.
30 * You must pass the exception name otherwise prepare_exception will fail with internal execution.
32 MONO_ERROR_GENERIC = 9
35 /*Keep in sync with MonoErrorInternal*/
36 typedef struct _MonoError {
37 unsigned short error_code;
38 unsigned short hidden_0; /*DON'T TOUCH */
40 void *hidden_1 [12]; /*DON'T TOUCH */
41 char hidden_2 [128]; /*DON'T TOUCH */
42 } MonoError;
44 MONO_BEGIN_DECLS
46 MONO_API void
47 mono_error_init (MonoError *error);
49 MONO_API void
50 mono_error_init_flags (MonoError *error, unsigned short flags);
52 MONO_API void
53 mono_error_cleanup (MonoError *error);
55 MONO_API mono_bool
56 mono_error_ok (MonoError *error);
58 MONO_API unsigned short
59 mono_error_get_error_code (MonoError *error);
61 MONO_API const char*
62 mono_error_get_message (MonoError *error);
64 MONO_END_DECLS
66 #endif