[sre] Separate SRE MonoDynamicImage encoding and SRE Save functions to separate files...
[mono.git] / mono / metadata / dynamic-image-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_DYNAMIC_IMAGE_INTERNALS_H__
6 #define __MONO_METADATA_DYNAMIC_IMAGE_INTERNALS_H__
7
8 #include <mono/metadata/object.h>
9 #include <mono/metadata/metadata-internals.h>
10
11 typedef struct {
12         guint32 import_lookup_table;
13         guint32 timestamp;
14         guint32 forwarder;
15         guint32 name_rva;
16         guint32 import_address_table_rva;
17 } MonoIDT;
18
19 typedef struct {
20         guint32 name_rva;
21         guint32 flags;
22 } MonoILT;
23
24
25 void
26 mono_dynamic_images_init (void);
27
28 void
29 mono_dynamic_image_register_token (MonoDynamicImage *assembly, guint32 token, MonoObject *obj);
30
31 gboolean
32 mono_dynamic_image_is_valid_token (MonoDynamicImage *image, guint32 token);
33
34 MonoDynamicImage*
35 mono_dynamic_image_create (MonoDynamicAssembly *assembly, char *assembly_name, char *module_name);
36
37 guint32
38 mono_dynamic_image_add_to_blob_cached (MonoDynamicImage *assembly, char *b1, int s1, char *b2, int s2);
39
40 void
41 mono_dynimage_alloc_table (MonoDynamicTable *table, guint nrows);
42
43 #endif  /* __MONO_METADATA_DYNAMIC_IMAGE_INTERNALS_H__ */
44