[msvc] Update csproj files (#4336)
[mono.git] / mono / metadata / exception.h
index 3de5ae7ff57681981cf95a766105308ab2cacc79..35ae5d69e523474e1b4c0c966d7993d2af7d6159 100644 (file)
@@ -105,6 +105,7 @@ mono_get_exception_io                    (const char *msg);
 MONO_API MonoException *
 mono_get_exception_file_not_found        (MonoString *fname);
 
+MONO_RT_EXTERNAL_ONLY
 MONO_API MonoException *
 mono_get_exception_file_not_found2       (const char *msg, MonoString *fname);
 
@@ -124,6 +125,7 @@ mono_get_exception_appdomain_unloaded (void);
 MONO_API MonoException *
 mono_get_exception_bad_image_format (const char *msg);
 
+MONO_RT_EXTERNAL_ONLY
 MONO_API MonoException *
 mono_get_exception_bad_image_format2 (const char *msg, MonoString *fname);
 
@@ -147,6 +149,14 @@ MONO_RT_EXTERNAL_ONLY
 MONO_API MonoException *
 mono_get_exception_runtime_wrapped (MonoObject *wrapped_exception);
 
+/* Installs a function which is called when the runtime encounters an unhandled exception.
+ * This hook isn't expected to return.
+ * If no hook has been installed, the runtime will print a message before aborting.
+ */
+typedef void  (*MonoUnhandledExceptionFunc)         (MonoObject *exc, void *user_data);
+MONO_API void mono_install_unhandled_exception_hook (MonoUnhandledExceptionFunc func, void *user_data);
+void          mono_invoke_unhandled_exception_hook  (MonoObject *exc);
+
 MONO_END_DECLS
 
 #endif /* _MONO_METADATA_EXCEPTION_H_ */