2009-11-15 Zoltan Varga <vargaz@gmail.com>
[mono.git] / mono / metadata / class.h
index 8a0b922cb4808a52735c56f86d15acb84dd6cb24..29ef6ecab92738c36d61d247625e62d64152b406 100644 (file)
@@ -4,6 +4,7 @@
 #include <mono/metadata/metadata.h>
 #include <mono/metadata/image.h>
 #include <mono/metadata/loader.h>
+#include <mono/utils/mono-error.h>
 
 G_BEGIN_DECLS
 
@@ -22,6 +23,8 @@ typedef struct {
        MonoClass *interfaces [MONO_ZERO_LEN_ARRAY];
 } MonoRemoteClass;
 
+#define MONO_SIZEOF_REMOTE_CLASS (sizeof (MonoRemoteClass) - MONO_ZERO_LEN_ARRAY * SIZEOF_VOID_P)
+
 MonoClass *
 mono_class_get             (MonoImage *image, guint32 type_token);
 
@@ -50,7 +53,7 @@ MonoClass *
 mono_class_from_generic_parameter (MonoGenericParam *param, MonoImage *image, gboolean is_mvar);
 
 MonoType*
-mono_class_inflate_generic_type (MonoType *type, MonoGenericContext *context);
+mono_class_inflate_generic_type (MonoType *type, MonoGenericContext *context) /* MONO_DEPRECATED */;
 
 MonoMethod*
 mono_class_inflate_generic_method (MonoMethod *method, MonoGenericContext *context);
@@ -211,6 +214,9 @@ mono_field_get_parent (MonoClassField *field);
 guint32
 mono_field_get_flags  (MonoClassField *field);
 
+guint32
+mono_field_get_offset  (MonoClassField *field);
+
 const char *
 mono_field_get_data  (MonoClassField *field);
 
@@ -258,6 +264,12 @@ mono_class_get_method_from_name (MonoClass *klass, const char *name, int param_c
 char *
 mono_class_name_from_token (MonoImage *image, guint32 type_token);
 
+gboolean
+mono_method_can_access_field (MonoMethod *method, MonoClassField *field);
+
+gboolean
+mono_method_can_access_method (MonoMethod *method, MonoMethod *called);
+
 G_END_DECLS
 
 #endif /* _MONO_CLI_CLASS_H_ */