Merge pull request #4093 from ntherning/enable-building-bcl-with-mono-4.6-mcs
[mono.git] / mono / metadata / appdomain-icalls.h
1 /*
2  * Appdomain-related icalls.
3  * Copyright 2016 Microsoft
4  * Licensed under the MIT license. See LICENSE file in the project root for full license information.
5  */
6
7 #ifndef __MONO_METADATA_APPDOMAIN_ICALLS_H__
8 #define __MONO_METADATA_APPDOMAIN_ICALLS_H__
9
10 #include <mono/metadata/appdomain.h>
11 #include <mono/metadata/handle.h>
12 #include <mono/metadata/object-internals.h>
13
14 MonoAppDomain *
15 ves_icall_System_AppDomain_getCurDomain            (void);
16
17 MonoAppDomain *
18 ves_icall_System_AppDomain_getRootDomain           (void);
19
20 MonoAppDomain *
21 ves_icall_System_AppDomain_createDomain            (MonoString         *friendly_name,
22                                                     MonoAppDomainSetup *setup);
23
24 MonoObject *
25 ves_icall_System_AppDomain_GetData                 (MonoAppDomain *ad, 
26                                                     MonoString    *name);
27
28 MonoReflectionAssemblyHandle
29 ves_icall_System_AppDomain_LoadAssemblyRaw         (MonoAppDomainHandle ad,
30                                                     MonoArrayHandle raw_assembly,
31                                                     MonoArrayHandle raw_symbol_store,
32                                                     MonoObjectHandle evidence,
33                                                     MonoBoolean refonly,
34                                                     MonoError *error);
35
36 void
37 ves_icall_System_AppDomain_SetData                 (MonoAppDomain *ad, 
38                                                     MonoString    *name, 
39                                                     MonoObject    *data);
40
41 MonoAppDomainSetup *
42 ves_icall_System_AppDomain_getSetup                (MonoAppDomain *ad);
43
44 MonoString *
45 ves_icall_System_AppDomain_getFriendlyName         (MonoAppDomain *ad);
46
47 MonoArrayHandle
48 ves_icall_System_AppDomain_GetAssemblies           (MonoAppDomainHandle ad,
49                                                     MonoBoolean refonly,
50                                                     MonoError *error);
51
52 MonoReflectionAssemblyHandle
53 ves_icall_System_Reflection_Assembly_LoadFrom      (MonoStringHandle fname,
54                                                     MonoBoolean refonly,
55                                                     MonoError *error);
56
57 MonoReflectionAssemblyHandle
58 ves_icall_System_AppDomain_LoadAssembly            (MonoAppDomainHandle ad, 
59                                                     MonoStringHandle assRef,
60                                                     MonoObjectHandle evidence,
61                                                     MonoBoolean refonly,
62                                                     MonoError *error);
63
64 gboolean
65 ves_icall_System_AppDomain_InternalIsFinalizingForUnload (gint32 domain_id);
66
67 void
68 ves_icall_System_AppDomain_InternalUnload          (gint32 domain_id);
69
70 void
71 ves_icall_System_AppDomain_DoUnhandledException (MonoException *exc);
72
73 gint32
74 ves_icall_System_AppDomain_ExecuteAssembly         (MonoAppDomainHandle ad,
75                                                     MonoReflectionAssemblyHandle refass,
76                                                     MonoArrayHandle args,
77                                                     MonoError *error);
78
79 MonoAppDomain * 
80 ves_icall_System_AppDomain_InternalSetDomain       (MonoAppDomain *ad);
81
82 MonoAppDomain * 
83 ves_icall_System_AppDomain_InternalSetDomainByID   (gint32 domainid);
84
85 void
86 ves_icall_System_AppDomain_InternalPushDomainRef (MonoAppDomain *ad);
87
88 void
89 ves_icall_System_AppDomain_InternalPushDomainRefByID (gint32 domain_id);
90
91 void
92 ves_icall_System_AppDomain_InternalPopDomainRef (void);
93
94 MonoAppContext * 
95 ves_icall_System_AppDomain_InternalGetContext      (void);
96
97 MonoAppContext * 
98 ves_icall_System_AppDomain_InternalGetDefaultContext      (void);
99
100 MonoAppContext * 
101 ves_icall_System_AppDomain_InternalSetContext      (MonoAppContext *mc);
102
103 gint32 
104 ves_icall_System_AppDomain_GetIDFromDomain (MonoAppDomain * ad);
105
106 MonoString *
107 ves_icall_System_AppDomain_InternalGetProcessGuid (MonoString* newguid);
108
109 MonoBoolean
110 ves_icall_System_CLRConfig_CheckThrowUnobservedTaskExceptions (void);
111
112
113 #endif /*__MONO_METADATA_APPDOMAIN_ICALLS_H__*/