#define MONO_CLASS_IS_INTERFACE(c) ((c->flags & TYPE_ATTRIBUTE_INTERFACE) || (c->byval_arg.type == MONO_TYPE_VAR) || (c->byval_arg.type == MONO_TYPE_MVAR))
+#define MONO_CLASS_IS_IMPORT(c) ((c->flags & TYPE_ATTRIBUTE_IMPORT))
+
typedef struct _MonoClass MonoClass;
typedef struct _MonoDomain MonoDomain;
typedef struct _MonoMethod MonoMethod;
MonoArrayType*
mono_type_get_array_type (MonoType *type);
+/* For MONO_TYPE_PTR */
+MonoType*
+mono_type_get_ptr_type (MonoType *type);
+
MonoClass*
mono_type_get_modifiers (MonoType *type, gboolean *is_required, gpointer *iter);
guint32 mono_metadata_declsec_from_index (MonoImage *meta, guint32 idx);
+guint32 mono_metadata_translate_token_index (MonoImage *image, int table, guint32 idx);
+
+void mono_metadata_decode_table_row (MonoImage *image, int table,
+ int idx,
+ guint32 *res,
+ int res_size);
+
+guint32 mono_metadata_decode_table_row_col (MonoImage *image, int table,
+ int idx,
+ guint col);
+
G_END_DECLS
#endif /* __MONO_METADATA_H__ */