Merge pull request #5714 from alexischr/update_bockbuild
[mono.git] / mono / metadata / marshal-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_MARSHAL_INTERNALS_H__
7 #define __MONO_METADATA_MARSHAL_INTERNALS_H__
8
9 #include <config.h>
10 #include <glib.h>
11 #include <mono/metadata/object-internals.h>
12
13 MonoObjectHandle
14 mono_marshal_xdomain_copy_value_handle (MonoObjectHandle val, MonoError *error);
15
16 // On Windows platform implementation of bellow methods are hosted in separate source file
17 // masrshal-windows.c or marshal-windows-*.c. On other platforms the implementation is still keept
18 // in marshal.c still declared as static and in some places even inlined.
19 #ifdef HOST_WIN32
20 void*
21 mono_marshal_alloc_co_task_mem (size_t size);
22
23 void
24 mono_marshal_free_co_task_mem (void *ptr);
25
26 gpointer
27 mono_marshal_realloc_co_task_mem (gpointer ptr, size_t size);
28
29 void*
30 mono_marshal_alloc_hglobal (size_t size);
31
32 gpointer
33 mono_marshal_realloc_hglobal (gpointer ptr, size_t size);
34
35 void
36 mono_marshal_free_hglobal (void *ptr);
37
38 gpointer
39 mono_string_to_utf8str (MonoString *s);
40 #endif  /* HOST_WIN32 */
41
42 #endif /* __MONO_METADATA_MARSHAL_INTERNALS_H__ */