Merge pull request #5714 from alexischr/update_bockbuild
[mono.git] / mono / metadata / icall-internals.h
1 /**
2  * \file
3  * Copyright 2016 Microsoft
4  * Licensed under the MIT license. See LICENSE file in the project root for full license information.
5  */
6 #ifndef __MONO_METADATA_ICALL_INTERNALS_H__
7 #define __MONO_METADATA_ICALL_INTERNALS_H__
8
9 #include <config.h>
10 #include <glib.h>
11 #include <mono/metadata/object-internals.h>
12
13 // On Windows platform implementation of bellow methods are hosted in separate source file
14 // icall-windows.c or icall-windows-*.c. On other platforms the implementation is still keept
15 // in icall.c still declared as static and in some places even inlined.
16 #ifdef HOST_WIN32
17 void
18 mono_icall_make_platform_path (gchar *path);
19
20 const gchar *
21 mono_icall_get_file_path_prefix (const gchar *path);
22
23 gpointer
24 mono_icall_module_get_hinstance (MonoReflectionModuleHandle module);
25
26 MonoStringHandle
27 mono_icall_get_machine_name (MonoError *error);
28
29 int
30 mono_icall_get_platform (void);
31
32 MonoStringHandle
33 mono_icall_get_new_line (MonoError *error);
34
35 MonoBoolean
36 mono_icall_is_64bit_os (void);
37
38 MonoArray *
39 mono_icall_get_environment_variable_names (MonoError *error);
40
41 void
42 mono_icall_set_environment_variable (MonoString *name, MonoString *value);
43
44 MonoStringHandle
45 mono_icall_get_windows_folder_path (int folder, MonoError *error);
46
47 MonoBoolean
48 mono_icall_broadcast_setting_change (MonoError *error);
49
50 void
51 mono_icall_write_windows_debug_string (MonoString *message);
52
53 gint32
54 mono_icall_wait_for_input_idle (gpointer handle, gint32 milliseconds);
55 #endif  /* HOST_WIN32 */
56
57 // On platforms not using classic WIN API support the  implementation of bellow methods are hosted in separate source file
58 // icall-windows-*.c. On platforms using classic WIN API the implementation is still keept in icall.c and still declared
59 // static and in some places even inlined.
60 #if !G_HAVE_API_SUPPORT(HAVE_CLASSIC_WINAPI_SUPPORT)
61 MonoArray *
62 mono_icall_get_logical_drives (void);
63
64 guint32
65 mono_icall_drive_info_get_drive_type (MonoString *root_path_name);
66 #endif  /* !G_HAVE_API_SUPPORT(HAVE_CLASSIC_WINAPI_SUPPORT) */
67
68 #endif /* __MONO_METADATA_ICALL_INTERNALS_H__ */