Merge pull request #3763 from akoeplinger/move-type
[mono.git] / mono / metadata / marshal-internals.h
1 /*
2  * Copyright 2016 Microsoft
3  * Licensed under the MIT license. See LICENSE file in the project root for full license information.
4  */
5 #ifndef __MONO_METADATA_MARSHAL_INTERNALS_H__
6 #define __MONO_METADATA_MARSHAL_INTERNALS_H__
7
8 #include <config.h>
9 #include <glib.h>
10 #include <mono/metadata/object-internals.h>
11
12 // On Windows platform implementation of bellow methods are hosted in separate source file
13 // masrshal-windows.c or marshal-windows-*.c. On other platforms the implementation is still keept
14 // in marshal.c still declared as static and in some places even inlined.
15 #ifdef HOST_WIN32
16 void*
17 mono_marshal_alloc_co_task_mem (size_t size);
18
19 void
20 mono_marshal_free_co_task_mem (void *ptr);
21
22 gpointer
23 mono_marshal_realloc_co_task_mem (gpointer ptr, size_t size);
24
25 void*
26 mono_marshal_alloc_hglobal (size_t size);
27
28 gpointer
29 mono_marshal_realloc_hglobal (gpointer ptr, size_t size);
30
31 void
32 mono_marshal_free_hglobal (void *ptr);
33
34 gpointer
35 mono_string_to_lpstr (MonoString *s);
36 #endif  /* HOST_WIN32 */
37
38 #endif /* __MONO_METADATA_MARSHAL_INTERNALS_H__ */