2 * Copyright 2014 Xamarin Inc
3 * Licensed under the MIT license. See LICENSE file in the project root for full license information.
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>
14 mono_reflection_is_usertype (MonoReflectionType
*ref
);
17 mono_reflection_type_resolve_user_types (MonoReflectionType
*type
, MonoError
*error
);
20 mono_reflection_get_type_checked (MonoImage
*rootimage
, MonoImage
* image
, MonoTypeNameParse
*info
, mono_bool ignorecase
, mono_bool
*type_resolve
, MonoError
*error
);
23 mono_reflection_type_from_name_checked (char *name
, MonoImage
*image
, MonoError
*error
);
26 mono_reflection_get_token_checked (MonoObject
*obj
, MonoError
*error
);
30 mono_custom_attrs_get_attr_checked (MonoCustomAttrInfo
*ainfo
, MonoClass
*attr_klass
, MonoError
*error
);
33 mono_reflection_get_custom_attrs_info_checked (MonoObject
*obj
, MonoError
*error
);
36 mono_reflection_get_custom_attrs_data_checked (MonoObject
*obj
, MonoError
*error
);
39 mono_reflection_get_custom_attrs_blob_checked (MonoReflectionAssembly
*assembly
, MonoObject
*ctor
, MonoArray
*ctorArgs
, MonoArray
*properties
, MonoArray
*propValues
, MonoArray
*fields
, MonoArray
* fieldValues
, MonoError
*error
);
42 mono_custom_attrs_from_index_checked (MonoImage
*image
, uint32_t idx
, MonoError
*error
);
44 mono_custom_attrs_from_method_checked (MonoMethod
*method
, MonoError
*error
);
46 mono_custom_attrs_from_class_checked (MonoClass
*klass
, MonoError
*error
);
48 mono_custom_attrs_from_assembly_checked (MonoAssembly
*assembly
, MonoError
*error
);
50 mono_custom_attrs_from_property_checked (MonoClass
*klass
, MonoProperty
*property
, MonoError
*error
);
52 mono_custom_attrs_from_event_checked (MonoClass
*klass
, MonoEvent
*event
, MonoError
*error
);
54 mono_custom_attrs_from_field_checked (MonoClass
*klass
, MonoClassField
*field
, MonoError
*error
);
56 mono_custom_attrs_from_param_checked (MonoMethod
*method
, uint32_t param
, MonoError
*error
);
60 mono_identifier_unescape_type_name_chars (char* identifier
);
63 mono_find_dynamic_image_owner (void *ptr
);
65 MonoReflectionAssembly
*
66 mono_assembly_get_object_checked (MonoDomain
*domain
, MonoAssembly
*assembly
, MonoError
*error
);
69 mono_type_get_object_checked (MonoDomain
*domain
, MonoType
*type
, MonoError
*error
);
72 mono_field_get_object_checked (MonoDomain
*domain
, MonoClass
*klass
, MonoClassField
*field
, MonoError
*error
);
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
);
81 mono_event_get_object_checked (MonoDomain
*domain
, MonoClass
*klass
, MonoEvent
*event
, MonoError
*error
);
84 mono_module_get_object_checked (MonoDomain
*domain
, MonoImage
*image
, MonoError
*error
);
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__ */