[reflection] Divide reflection.c into multiple files. NFC
[mono-project.git] / mono / metadata / reflection-internals.h
blob046c6c2e8a86bf123a80aa7c690f2b209579cbba
1 /*
2 * Copyright 2014 Xamarin Inc
3 * Licensed under the MIT license. See LICENSE file in the project root for full license information.
4 */
5 #ifndef __MONO_METADATA_REFLECTION_INTERNALS_H__
6 #define __MONO_METADATA_REFLECTION_INTERNALS_H__
8 #include <mono/metadata/reflection.h>
9 #include <mono/metadata/class-internals.h>
10 #include <mono/utils/mono-compiler.h>
11 #include <mono/utils/mono-error.h>
13 gboolean
14 mono_reflection_is_usertype (MonoReflectionType *ref);
16 MonoReflectionType*
17 mono_reflection_type_resolve_user_types (MonoReflectionType *type, MonoError *error);
19 MonoType*
20 mono_reflection_get_type_checked (MonoImage *rootimage, MonoImage* image, MonoTypeNameParse *info, mono_bool ignorecase, mono_bool *type_resolve, MonoError *error);
22 MonoType*
23 mono_reflection_type_from_name_checked (char *name, MonoImage *image, MonoError *error);
25 guint32
26 mono_reflection_get_token_checked (MonoObject *obj, MonoError *error);
29 MonoObject*
30 mono_custom_attrs_get_attr_checked (MonoCustomAttrInfo *ainfo, MonoClass *attr_klass, MonoError *error);
32 MonoCustomAttrInfo*
33 mono_reflection_get_custom_attrs_info_checked (MonoObject *obj, MonoError *error);
35 MonoArray*
36 mono_reflection_get_custom_attrs_data_checked (MonoObject *obj, MonoError *error);
38 MonoArray*
39 mono_reflection_get_custom_attrs_blob_checked (MonoReflectionAssembly *assembly, MonoObject *ctor, MonoArray *ctorArgs, MonoArray *properties, MonoArray *propValues, MonoArray *fields, MonoArray* fieldValues, MonoError *error);
41 MonoCustomAttrInfo*
42 mono_custom_attrs_from_index_checked (MonoImage *image, uint32_t idx, MonoError *error);
43 MonoCustomAttrInfo*
44 mono_custom_attrs_from_method_checked (MonoMethod *method, MonoError *error);
45 MonoCustomAttrInfo*
46 mono_custom_attrs_from_class_checked (MonoClass *klass, MonoError *error);
47 MonoCustomAttrInfo*
48 mono_custom_attrs_from_assembly_checked (MonoAssembly *assembly, MonoError *error);
49 MonoCustomAttrInfo*
50 mono_custom_attrs_from_property_checked (MonoClass *klass, MonoProperty *property, MonoError *error);
51 MonoCustomAttrInfo*
52 mono_custom_attrs_from_event_checked (MonoClass *klass, MonoEvent *event, MonoError *error);
53 MonoCustomAttrInfo*
54 mono_custom_attrs_from_field_checked (MonoClass *klass, MonoClassField *field, MonoError *error);
55 MonoCustomAttrInfo*
56 mono_custom_attrs_from_param_checked (MonoMethod *method, uint32_t param, MonoError *error);
59 char*
60 mono_identifier_unescape_type_name_chars (char* identifier);
62 MonoImage *
63 mono_find_dynamic_image_owner (void *ptr);
65 MonoReflectionAssembly*
66 mono_assembly_get_object_checked (MonoDomain *domain, MonoAssembly *assembly, MonoError *error);
68 MonoReflectionType*
69 mono_type_get_object_checked (MonoDomain *domain, MonoType *type, MonoError *error);
71 MonoReflectionField*
72 mono_field_get_object_checked (MonoDomain *domain, MonoClass *klass, MonoClassField *field, MonoError *error);
74 MonoReflectionMethod*
75 mono_method_get_object_checked (MonoDomain *domain, MonoMethod *method, MonoClass *refclass, MonoError *error);
77 MonoReflectionProperty*
78 mono_property_get_object_checked (MonoDomain *domain, MonoClass *klass, MonoProperty *property, MonoError *error);
80 MonoReflectionEvent*
81 mono_event_get_object_checked (MonoDomain *domain, MonoClass *klass, MonoEvent *event, MonoError *error);
83 MonoReflectionModule*
84 mono_module_get_object_checked (MonoDomain *domain, MonoImage *image, MonoError *error);
86 MonoReflectionModule*
87 mono_module_file_get_object_checked (MonoDomain *domain, MonoImage *image, int table_index, MonoError *error);
89 MonoReflectionMethodBody*
90 mono_method_body_get_object_checked (MonoDomain *domain, MonoMethod *method, MonoError *error);
93 #endif /* __MONO_METADATA_REFLECTION_INTERNALS_H__ */