#include <mono/metadata/image.h>
#include <mono/metadata/loader.h>
+G_BEGIN_DECLS
+
typedef struct MonoVTable MonoVTable;
typedef struct _MonoClassField MonoClassField;
MonoClass *
mono_class_get_full (MonoImage *image, guint32 type_token, MonoGenericContext *context);
-void
+gboolean
mono_class_init (MonoClass *klass);
MonoVTable *
mono_class_inflate_generic_type (MonoType *type, MonoGenericContext *context);
MonoMethod*
-mono_class_inflate_generic_method (MonoMethod *method, MonoGenericContext *context, MonoClass *klass);
+mono_class_inflate_generic_method (MonoMethod *method, MonoGenericContext *context);
MonoMethod *
mono_get_inflated_method (MonoMethod *method);
char*
mono_type_get_name (MonoType *type);
-char*
-mono_type_get_full_name (MonoType *type);
-
MonoType*
mono_type_get_underlying_type (MonoType *type);
MonoType*
mono_class_get_type (MonoClass *klass);
+guint32
+mono_class_get_type_token (MonoClass *klass);
+
MonoType*
mono_class_get_byref_type (MonoClass *klass);
guint32
mono_field_get_flags (MonoClassField *field);
+guint32
+mono_field_get_offset (MonoClassField *field);
+
+const char *
+mono_field_get_data (MonoClassField *field);
+
/* MonoProperty acessors */
const char*
mono_property_get_name (MonoProperty *prop);
mono_class_get_method_from_name (MonoClass *klass, const char *name, int param_count);
char *
-mono_class_name_from_token (MonoImage *image, guint32 type_token, MonoGenericContext *context);
+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_ */