1 #ifndef _MONO_CLI_CLASS_H_
2 #define _MONO_CLI_CLASS_H_
4 #include <mono/metadata/metadata.h>
5 #include <mono/metadata/image.h>
6 #include <mono/cli/cli.h>
8 #define MONO_CLASS_IS_ARRAY(c) (c->type_token == 0)
16 typedef struct _MonoClass MonoClass;
23 guint valuetype : 1; /* derives from System.ValueType */
24 guint evaltype : 1; /* element type derives from System.ValueType */
29 * Computed object instance size, total.
35 * From the TypeDef table
44 * Field information: Type and location from object base
46 MonoClassField *fields;
48 struct MonoMethod **methods;
51 * After the fields, there is room for the static fields...
57 guint32 rank; /* array dimension */
58 guint32 etype_token; /* element type token */
59 guint32 esize; /* element size */
63 mono_class_get (MonoImage *image, guint32 type_token);
66 mono_array_class_get (MonoImage *image, guint32 etype, guint32 rank);
69 mono_class_get_field (MonoClass *class, guint32 field_token);
71 #endif /* _MONO_CLI_CLASS_H_ */