Răsfoiți Sursa

Reorganization

svn path=/trunk/mono/; revision=289
Miguel de Icaza 24 ani în urmă
părinte
comite
1ebef995ee

+ 9 - 1
doc/download

@@ -24,11 +24,19 @@ href="ftp://ftp.gtk.org/pub/gtk/v1.2/glib-1.2.10.tar.gz">ftp://ftp.gtk.org/pub/g
 	we make the first tarball release.
 
 	<ul>
+		<a name="july-22">
+		<b>July 22, 2001</b>
+		<ul>
+		* <a href="archive/mcs-22-Jul-2001.tar.gz">mcs-22-Jul-2001.tar.gz</a>: CVS snapshot.
+		* <a href="archive/mcs-Jul-22-Jul-19-2001.tar.gz">Differences since 19</a>: CVS snapshot.
+		* <a href="archive/mcs-22">Release Notes</a>
+		</ul>
+
 		<a name="july-19">
 		<b>July 19th, 2001</b>
 		<ul>
 		* <a href="archive/mcs-19-Jul-2001.tar.gz">mcs-19-Jul-2001.tar.gz</a>: CVS snapshot.
-		* <a href="archive/mcs-Jul-17-Jul-19-2001.tar.gz">Differences since 15</a>: CVS snapshot.
+		* <a href="archive/mcs-Jul-17-Jul-19-2001.tar.gz">Differences since 17</a>: CVS snapshot.
 		* <a href="archive/mcs-19">Release Notes</a>
 		</ul>
 

+ 3 - 1
mono/cli/Makefile.am

@@ -5,5 +5,7 @@ INCLUDES = $(GLIB_CFLAGS) -I$(top_srcdir)
 libmonocli_a_SOURCES = \
 	loader.c
 
-libmonocli_a_HEADERS =
+libmonocliincludedir = $(includir)/mono/cli
+
+libmonocliinclude_HEADERS = \
 	cli.h

+ 3 - 6
mono/dis/meta.h

@@ -1,10 +1,7 @@
 #include <mono/metadata/image.h>
 #include <mono/metadata/cil-coff.h>
 #include <mono/metadata/endian.h>
-#include <mono/metadata/typeattr.h>
-#include <mono/metadata/fieldattr.h>
-#include <mono/metadata/methodattr.h>
-#include <mono/metadata/eltype.h>
-#include <mono/metadata/blobsig.h>
-#include <mono/metadata/paramattr.h>
+#include <mono/metadata/tabledefs.h>
 #include <mono/metadata/tokentype.h>
+#include <mono/metadata/blob.h>
+

+ 2 - 6
mono/interpreter/interp.c

@@ -28,12 +28,8 @@
 #include <mono/metadata/assembly.h>
 #include <mono/metadata/cil-coff.h>
 #include <mono/metadata/endian.h>
-#include <mono/metadata/typeattr.h>
-#include <mono/metadata/fieldattr.h>
-#include <mono/metadata/methodattr.h>
-#include <mono/metadata/eltype.h>
-#include <mono/metadata/blobsig.h>
-#include <mono/metadata/paramattr.h>
+#include <mono/metadata/tabledefs.h>
+#include <mono/metadata/blob.h>
 
 #include <mono/cli/cli.h>
 

+ 3 - 10
mono/metadata/Makefile.am

@@ -18,21 +18,14 @@ libmetadataincludedir = $(includedir)/mono/metadata
 
 libmetadatainclude_HEADERS = \
 	assembly.h	\
-	blobsig.h	\
+	blob.h		\
 	cil-coff.h	\
-	eltype.h	\
 	endian.h	\
-	fieldattr.h	\
 	image.h		\
 	metadata.h	\
-	methodattr.h	\
-	methodheader.h	\
-	methodsem.h	\
-	paramattr.h	\
-	propertyattr.h	\
 	rawbuffer.h	\
-	tokentype.h	\
-	typeattr.h
+	tabledefs.h	\
+	tokentype.h
 
 pedump_SOURCES =		\
 	pedump.c $(libmetadata_a_SOURCES)

+ 0 - 8
mono/metadata/blobsig.h

@@ -1,8 +0,0 @@
-#ifndef _MONO_METADATA_BLOB_SIG_H_
-#define _MONO_METADATA_BLOB_SIG_H_
-
-#define SIGNATURE_HAS_THIS      0x20
-#define SIGNATURE_EXPLICIT_THIS 0x40
-#define SIGNATURE_VARARG        0x05
-
-#endif

+ 23 - 0
mono/metadata/cil-coff.h

@@ -4,6 +4,29 @@
 
 #include <mono/metadata/metadata.h>
 
+/*
+ * 25.2.1: Method header type values
+ */
+#define METHOD_HEADER_FORMAT_MASK   7
+#define METHOD_HEADER_TINY_FORMAT   2
+#define METHOD_HEADER_TINY_FORMAT1  6
+#define METHOD_HEADER_FAT_FORMAT    3
+
+/*
+ * 25.2.3.1: Flags for method headers
+ */
+#define METHOD_HEADER_INIT_LOCALS   0x10
+#define METHOD_HEADER_MORE_SECTS    0x08
+
+/*
+ * For section data (25.3)
+ */
+#define METHOD_HEADER_SECTION_RESERVED    0
+#define METHOD_HEADER_SECTION_EHTABLE     1
+#define METHOD_HEADER_SECTION_OPTIL_TABLE 2
+#define METHOD_HEADER_SECTION_FAT_FORMAT  0x40
+#define METHOD_HEADER_SECTION_MORE_SECTS  0x80
+
 /* A metadata token */
 typedef guint32 mtoken_t;
 

+ 0 - 43
mono/metadata/eltype.h

@@ -1,43 +0,0 @@
-#ifndef _MONO_METADATA_ELTYPE_H_
-#define _MONO_METADATA_ELTYPE_H_
-
-/*
- * Encoding for type signatures used in the Metadata
- */
-typedef enum {
-	ELEMENT_TYPE_END        = 0x00,       /* End of List */
-	ELEMENT_TYPE_VOID       = 0x01,
-	ELEMENT_TYPE_BOOLEAN    = 0x02,
-	ELEMENT_TYPE_CHAR       = 0x03,
-	ELEMENT_TYPE_I1         = 0x04,
-	ELEMENT_TYPE_U1         = 0x05,
-	ELEMENT_TYPE_I2         = 0x06,
-	ELEMENT_TYPE_U2         = 0x07,
-	ELEMENT_TYPE_I4         = 0x08,
-	ELEMENT_TYPE_U4         = 0x09,
-	ELEMENT_TYPE_I8         = 0x0a,
-	ELEMENT_TYPE_U8         = 0x0b,
-	ELEMENT_TYPE_R4         = 0x0c,
-	ELEMENT_TYPE_R8         = 0x0d,
-	ELEMENT_TYPE_STRING     = 0x0e,
-	ELEMENT_TYPE_PTR        = 0x0f,       /* arg: <type> token */
-	ELEMENT_TYPE_BYREF      = 0x10,       /* arg: <type> token */
-	ELEMENT_TYPE_VALUETYPE  = 0x11,       /* arg: <type> token */
-	ELEMENT_TYPE_CLASS      = 0x12,       /* arg: <type> token */
-	ELEMENT_TYPE_ARRAY      = 0x14,       /* type, rank, boundsCount, bound1, loCount, lo1 */
-	ELEMENT_TYPE_TYPEDBYREF = 0x15,
-	ELEMENT_TYPE_I          = 0x18,
-	ELEMENT_TYPE_U          = 0x19,
-	ELEMENT_TYPE_FNPTR      = 0x1b,	      /* arg: full method signature */
-	ELEMENT_TYPE_OBJECT     = 0x1c,
-	ELEMENT_TYPE_SZARRAY    = 0x1d,       /* 0-based one-dim-array */
-	ELEMENT_TYPE_CMOD_REQD  = 0x1f,       /* arg: typedef or typeref token */
-	ELEMENT_TYPE_CMOD_OPT   = 0x20,       /* optional arg: typedef or typref token */
-	ELEMENT_TYPE_INTERNAL   = 0x21,       /* CLR internal type */
-
-	ELEMENT_TYPE_MODIFIER   = 0x40,       /* Or with the following types */
-	ELEMENT_TYPE_SENTINEL   = 0x41,       /* Sentinel for varargs method signature */
-	ELEMENT_TYPE_PINNED     = 0x45,       /* Local var that points to pinned object */
-} ElementTypeEnum;
-
-#endif /* _MONO_METADATA_ELTYPE_H_ */

+ 0 - 34
mono/metadata/fieldattr.h

@@ -1,34 +0,0 @@
-#ifndef _MONO_METADATA_FIELDATTR_H_
-#define _MONO_METADATA_FIELDATTR_H_
-/*
- * Flags for bitmasks in the metadata tables
- */
-
-/*
- * Field Attributes (21.1.5).
- */
-
-#define FIELD_ATTRIBUTE_FIELD_ACCESS_MASK     0x0007
-#define FIELD_ATTRIBUTE_COMPILER_CONTROLLED   0x0000
-#define FIELD_ATTRIBUTE_PRIVATE               0x0001
-#define FIELD_ATTRIBUTE_FAM_AND_ASSEM         0x0002
-#define FIELD_ATTRIBUTE_ASSEMBLY              0x0003
-#define FIELD_ATTRIBUTE_FAMILY                0x0004
-#define FIELD_ATTRIBUTE_FAM_OR_ASSEM          0x0005
-#define FIELD_ATTRIBUTE_PUBLIC                0x0006
-
-#define FIELD_ATTRIBUTE_STATIC                0x0010
-#define FIELD_ATTRIBUTE_INIT_ONLY             0x0020
-#define FIELD_ATTRIBUTE_LITERAL               0x0040
-#define FIELD_ATTRIBUTE_NOT_SERIALIZED        0x0080
-#define FIELD_ATTRIBUTE_SPECIAL_NAME          0x0200
-#define FIELD_ATTRIBUTE_PINVOKE_IMPL          0x2000
-
-/* For runtime use only */
-#define FIELD_ATTRIBUTE_RESERVED_MASK         0x9500
-#define FIELD_ATTRIBUTE_RT_SPECIAL_NAME       0x0400
-#define FIELD_ATTRIBUTE_HAS_FIELD_MARSHAL     0x1000
-#define FIELD_ATTRIBUTE_HAS_DEFAULT           0x8000
-#define FIELD_ATTRIBUTE_HAS_FIELD_RVA         0x0100
-
-#endif

+ 1 - 1
mono/metadata/metadata.c

@@ -11,7 +11,7 @@
 #include <stdio.h> 
 #include <glib.h>
 #include "metadata.h"
-#include "methodheader.h"
+#include "tabledefs.h"
 #include "endian.h"
 #include "cil-coff.h"
 

+ 1 - 1
mono/metadata/metadata.h

@@ -4,7 +4,7 @@
 
 #include <glib.h>
 
-#include <mono/metadata/eltype.h>
+#include <mono/metadata/blob.h>
 
 typedef struct {
 	guint32  sh_offset;

+ 16 - 0
mono/metadata/metaparse.h

@@ -0,0 +1,16 @@
+#ifndef _MONO_METADATA_METAPARSE_H_
+#define _MONO_METADATA_METAPARSE_H__
+
+typedef struct {
+	guint32  cols [6];
+	struct {
+		guint32 first, last;
+	} field;
+	struct {
+		guint32 first, last;
+	} method;
+} MonoTypedef;
+
+void mono_typedef_get (MonoImage *image, guint32 tidx, MonoTypedef *ret);
+
+#endif

+ 0 - 57
mono/metadata/methodattr.h

@@ -1,57 +0,0 @@
-#ifndef _MONO_METADATA_METHODATTR_H_
-#define _MONO_METADATA_METHODATTR_H_
-
-/*
- * Method Attributes (22.1.9)
- */
-
-#define METHOD_IMPL_ATTRIBUTE_CODE_TYPE_MASK       0x0003
-#define METHOD_IMPL_ATTRIBUTE_IL                   0x0000
-#define METHOD_IMPL_ATTRIBUTE_NATIVE               0x0001
-#define METHOD_IMPL_ATTRIBUTE_OPTIL                0x0002
-#define METHOD_IMPL_ATTRIBUTE_RUNTIME              0x0003
-
-#define METHOD_IMPL_ATTRIBUTE_MANAGED_MASK         0x0004
-#define METHOD_IMPL_ATTRIBUTE_UNMANAGED            0x0004
-#define METHOD_IMPL_ATTRIBUTE_MANAGED              0x0000
-
-#define METHOD_IMPL_ATTRIBUTE_FORWARD_REF          0x0010
-#define METHOD_IMPL_ATTRIBUTE_PRESERVE_SIG         0x0080
-#define METHOD_IMPL_ATTRIBUTE_INTERNAL_CALL        0x1000
-#define METHOD_IMPL_ATTRIBUTE_SYNCHRONIZED         0x0020
-#define METHOD_IMPL_ATTRIBUTE_NOINLINING           0x0008
-#define METHOD_IMPL_ATTRIBUTE_MAX_METHOD_IMPL_VAL  0xffff
-
-#define METHOD_ATTRIBUTE_MEMBER_ACCESS_MASK        0x0007
-#define METHOD_ATTRIBUTE_COMPILER_CONTROLLED       0x0000
-#define METHOD_ATTRIBUTE_PRIVATE                   0x0001
-#define METHOD_ATTRIBUTE_FAM_AND_ASSEM             0x0002
-#define METHOD_ATTRIBUTE_ASSEM                     0x0003
-#define METHOD_ATTRIBUTE_FAMILY                    0x0004
-#define METHOD_ATTRIBUTE_FAM_OR_ASSEM              0x0005
-#define METHOD_ATTRIBUTE_PUBLIC                    0x0006
-
-#define METHOD_ATTRIBUTE_STATIC                    0x0010
-#define METHOD_ATTRIBUTE_FINAL                     0x0020
-#define METHOD_ATTRIBUTE_VIRTUAL                   0x0040
-#define METHOD_ATTRIBUTE_HIDE_BY_SIG               0x0080
-
-#define METHOD_ATTRIBUTE_VTABLE_LAYOUT_MASK        0x0100
-#define METHOD_ATTRIBUTE_REUSE_SLOT                0x0000
-#define METHOD_ATTRIBUTE_NEW_SLOT                  0x0100
-
-#define METHOD_ATTRIBUTE_ABSTRACT                  0x0400
-#define METHOD_ATTRIBUTE_SPECIAL_NAME              0x0800
-
-#define METHOD_ATTRIBUTE_PINVOKE_IMPL              0x2000
-#define METHOD_ATTRIBUTE_UNMANAGED_EXPORT          0x0008
-
-/*
- * For runtime use only
- */
-#define METHOD_ATTRIBUTE_RESERVED_MASK             0xd000
-#define METHOD_ATTRIBUTE_RT_SPECIAL_NAME           0x1000
-#define METHOD_ATTRIBUTE_HAS_SECURITY              0x4000
-#define METHOD_ATTRIBUTE_REQUIRE_SEC_OBJECT        0x8000
-
-#endif

+ 0 - 29
mono/metadata/methodheader.h

@@ -1,29 +0,0 @@
-#ifndef _MONO_METADATA_METHOD_HEADER_H_
-#define _MONO_METADATA_METHOD_HEADER_H_
-
-/*
- * 25.2.1: Method header type values
- */
-#define METHOD_HEADER_FORMAT_MASK   7
-#define METHOD_HEADER_TINY_FORMAT   2
-#define METHOD_HEADER_TINY_FORMAT1  6
-#define METHOD_HEADER_FAT_FORMAT    3
-
-/*
- * 25.2.3.1: Flags for method headers
- */
-#define METHOD_HEADER_INIT_LOCALS   0x10
-#define METHOD_HEADER_MORE_SECTS    0x08
-
-/*
- * For section data (25.3)
- */
-#define METHOD_HEADER_SECTION_RESERVED    0
-#define METHOD_HEADER_SECTION_EHTABLE     1
-#define METHOD_HEADER_SECTION_OPTIL_TABLE 2
-#define METHOD_HEADER_SECTION_FAT_FORMAT  0x40
-#define METHOD_HEADER_SECTION_MORE_SECTS  0x80
-
-#endif /* _MONO_METADATA_METHOD_HEADER_H_ */
-
-

+ 0 - 15
mono/metadata/methodsem.h

@@ -1,15 +0,0 @@
-#ifndef _MONO_METADATA_METHODSEM_H_
-#define _MONO_METADATA_METHODSEM_H_
-
-/*
- * Method Semantics ([MethodSemanticAttributes]) 22.1.10
- */
-
-#define METHOD_SEMANTIC_SETTER    0x0001
-#define METHOD_SEMANTIC_GETTER    0x0002
-#define METHOD_SEMANTIC_OTHER     0x0004
-#define METHOD_SEMANTIC_ADD_ON    0x0008
-#define METHOD_SEMANTIC_REMOVE_ON 0x0010
-#define METHOD_SEMANTIC_FIRE      0x0020
-
-#endif

+ 0 - 12
mono/metadata/paramattr.h

@@ -1,12 +0,0 @@
-#ifndef _MONO_METADATA_PARAMATTR_H_
-#define _MONO_METADATA_PARAMATTR_H_
-
-#define PARAM_ATTRIBUTE_IN                 0x0001
-#define PARAM_ATTRIBUTE_OUT                0x0002
-#define PARAM_ATTRIBUTE_OPTIONAL           0x0004
-#define PARAM_ATTRIBUTE_RESERVED_MASK      0xf000
-#define PARAM_ATTRIBUTE_HAS_DEFAULT        0x1000
-#define PARAM_ATTRIBUTE_HAS_FIELD_MARSHAL  0x2000
-#define PARAM_ATTRIBUTE_UNUSED             0xcfe0
-
-#endif

+ 0 - 10
mono/metadata/propertyattr.h

@@ -1,10 +0,0 @@
-#ifndef _MONO_METADATA_PROPERTYATTR_H_
-#define _MONO_METADATA_PROPERTYATTR_H_
-
-#define PROPERTY_ATTRIBUTE_SPECIAL_NAME    0x0200
-#define PROPERTY_ATTRIBUTE_RESERVED_MASK   0xf400
-#define PROPERTY_ATTRIBUTE_RT_SPECIAL_NAME 0x0400
-#define PROPERTY_ATTRIBUTE_HAS_DEFAULT     0x1000
-#define PROPERTY_ATTRIBUTE_UNUSED          0xe9ff
-
-#endif

+ 169 - 0
mono/metadata/tabledefs.h

@@ -0,0 +1,169 @@
+/*
+ * tabledefs.h: This file contains the various definitions for constants
+ * found on the metadata tables
+ *
+ * Author:
+ *   Miguel de Icaza ([email protected])
+ *
+ * (C) 2001 Ximian, Inc.
+ *
+ * From the ECMA documentation
+ */
+ 
+#ifndef _MONO_METADATA_TABLEDEFS_H_
+#define _MONO_METADATA_TABLEDEFS_H_
+
+
+/*
+ * Field Attributes (21.1.5).
+ */
+
+#define FIELD_ATTRIBUTE_FIELD_ACCESS_MASK     0x0007
+#define FIELD_ATTRIBUTE_COMPILER_CONTROLLED   0x0000
+#define FIELD_ATTRIBUTE_PRIVATE               0x0001
+#define FIELD_ATTRIBUTE_FAM_AND_ASSEM         0x0002
+#define FIELD_ATTRIBUTE_ASSEMBLY              0x0003
+#define FIELD_ATTRIBUTE_FAMILY                0x0004
+#define FIELD_ATTRIBUTE_FAM_OR_ASSEM          0x0005
+#define FIELD_ATTRIBUTE_PUBLIC                0x0006
+
+#define FIELD_ATTRIBUTE_STATIC                0x0010
+#define FIELD_ATTRIBUTE_INIT_ONLY             0x0020
+#define FIELD_ATTRIBUTE_LITERAL               0x0040
+#define FIELD_ATTRIBUTE_NOT_SERIALIZED        0x0080
+#define FIELD_ATTRIBUTE_SPECIAL_NAME          0x0200
+#define FIELD_ATTRIBUTE_PINVOKE_IMPL          0x2000
+
+/* For runtime use only */
+#define FIELD_ATTRIBUTE_RESERVED_MASK         0x9500
+#define FIELD_ATTRIBUTE_RT_SPECIAL_NAME       0x0400
+#define FIELD_ATTRIBUTE_HAS_FIELD_MARSHAL     0x1000
+#define FIELD_ATTRIBUTE_HAS_DEFAULT           0x8000
+#define FIELD_ATTRIBUTE_HAS_FIELD_RVA         0x0100
+
+/*
+ * Type Attributes (21.1.13).
+ */
+#define TYPE_ATTRIBUTE_VISIBILITY_MASK       0x00000007
+#define TYPE_ATTRIBUTE_NOT_PUBLIC            0x00000000
+#define TYPE_ATTRIBUTE_PUBLIC                0x00000001
+#define TYPE_ATTRIBUTE_NESTED_PUBLIC         0x00000002
+#define TYPE_ATTRIBUTE_NESTED_PRIVATE        0x00000003
+#define TYPE_ATTRIBUTE_NESTED_FAMILY         0x00000004
+#define TYPE_ATTRIBUTE_NESTED_ASSEMBLY       0x00000005
+#define TYPE_ATTRIBUTE_NESTED_FAM_AND_ASSEM  0x00000006
+#define TYPE_ATTRIBUTE_NESTED_FAM_OR_ASSEM   0x00000007
+
+#define TYPE_ATTRIBUTE_LAYOUT_MASK           0x00000018
+#define TYPE_ATTRIBUTE_AUTO_LAYOUT           0x00000000
+#define TYPE_ATTRIBUTE_SEQUENTIAL_LAYOUT     0x00000008
+#define TYPE_ATTRIBUTE_EXPLICIT_LAYOUT       0x00000010
+
+#define TYPE_ATTRIBUTE_CLASS_SEMANTIC_MASK   0x00000020
+#define TYPE_ATTRIBUTE_CLASS                 0x00000000
+#define TYPE_ATTRIBUTE_INTERFACE             0x00000020
+
+#define TYPE_ATTRIBUTE_ABSTRACT              0x00000080
+#define TYPE_ATTRIBUTE_SEALED                0x00000100
+#define TYPE_ATTRIBUTE_SPECIAL_NAME          0x00000400
+
+#define TYPE_ATTRIBUTE_IMPORT                0x00001000
+#define TYPE_ATTRIBUTE_SERIALIZABLE          0x00002000
+
+#define TYPE_ATTRIBUTE_STRING_FORMAT_MASK    0x00030000
+#define TYPE_ATTRIBUTE_ANSI_CLASS            0x00000000
+#define TYPE_ATTRIBUTE_UNICODE_CLASS         0x00010000
+#define TYPE_ATTRIBUTE_AUTO_CLASS            0x00020000
+
+#define TYPE_ATTRIBUTE_BEFORE_FIELD_INIT     0x00100000
+
+#define TYPE_ATTRIBUTE_RESERVED_MASK         0x00040800
+#define TYPE_ATTRIBUTE_RT_SPECIAL_NAME       0x00000800
+#define TYPE_ATTRIBUTE_HAS_SECURITY          0x00040000
+
+/*
+ * Method Attributes (22.1.9)
+ */
+
+#define METHOD_IMPL_ATTRIBUTE_CODE_TYPE_MASK       0x0003
+#define METHOD_IMPL_ATTRIBUTE_IL                   0x0000
+#define METHOD_IMPL_ATTRIBUTE_NATIVE               0x0001
+#define METHOD_IMPL_ATTRIBUTE_OPTIL                0x0002
+#define METHOD_IMPL_ATTRIBUTE_RUNTIME              0x0003
+
+#define METHOD_IMPL_ATTRIBUTE_MANAGED_MASK         0x0004
+#define METHOD_IMPL_ATTRIBUTE_UNMANAGED            0x0004
+#define METHOD_IMPL_ATTRIBUTE_MANAGED              0x0000
+
+#define METHOD_IMPL_ATTRIBUTE_FORWARD_REF          0x0010
+#define METHOD_IMPL_ATTRIBUTE_PRESERVE_SIG         0x0080
+#define METHOD_IMPL_ATTRIBUTE_INTERNAL_CALL        0x1000
+#define METHOD_IMPL_ATTRIBUTE_SYNCHRONIZED         0x0020
+#define METHOD_IMPL_ATTRIBUTE_NOINLINING           0x0008
+#define METHOD_IMPL_ATTRIBUTE_MAX_METHOD_IMPL_VAL  0xffff
+
+#define METHOD_ATTRIBUTE_MEMBER_ACCESS_MASK        0x0007
+#define METHOD_ATTRIBUTE_COMPILER_CONTROLLED       0x0000
+#define METHOD_ATTRIBUTE_PRIVATE                   0x0001
+#define METHOD_ATTRIBUTE_FAM_AND_ASSEM             0x0002
+#define METHOD_ATTRIBUTE_ASSEM                     0x0003
+#define METHOD_ATTRIBUTE_FAMILY                    0x0004
+#define METHOD_ATTRIBUTE_FAM_OR_ASSEM              0x0005
+#define METHOD_ATTRIBUTE_PUBLIC                    0x0006
+
+#define METHOD_ATTRIBUTE_STATIC                    0x0010
+#define METHOD_ATTRIBUTE_FINAL                     0x0020
+#define METHOD_ATTRIBUTE_VIRTUAL                   0x0040
+#define METHOD_ATTRIBUTE_HIDE_BY_SIG               0x0080
+
+#define METHOD_ATTRIBUTE_VTABLE_LAYOUT_MASK        0x0100
+#define METHOD_ATTRIBUTE_REUSE_SLOT                0x0000
+#define METHOD_ATTRIBUTE_NEW_SLOT                  0x0100
+
+#define METHOD_ATTRIBUTE_ABSTRACT                  0x0400
+#define METHOD_ATTRIBUTE_SPECIAL_NAME              0x0800
+
+#define METHOD_ATTRIBUTE_PINVOKE_IMPL              0x2000
+#define METHOD_ATTRIBUTE_UNMANAGED_EXPORT          0x0008
+
+/*
+ * For runtime use only
+ */
+#define METHOD_ATTRIBUTE_RESERVED_MASK             0xd000
+#define METHOD_ATTRIBUTE_RT_SPECIAL_NAME           0x1000
+#define METHOD_ATTRIBUTE_HAS_SECURITY              0x4000
+#define METHOD_ATTRIBUTE_REQUIRE_SEC_OBJECT        0x8000
+
+
+/*
+ * Method Semantics ([MethodSemanticAttributes]) 22.1.10
+ */
+
+#define METHOD_SEMANTIC_SETTER    0x0001
+#define METHOD_SEMANTIC_GETTER    0x0002
+#define METHOD_SEMANTIC_OTHER     0x0004
+#define METHOD_SEMANTIC_ADD_ON    0x0008
+#define METHOD_SEMANTIC_REMOVE_ON 0x0010
+#define METHOD_SEMANTIC_FIRE      0x0020
+
+/*
+ * Flags for Params (22.1.11)
+ */
+#define PARAM_ATTRIBUTE_IN                 0x0001
+#define PARAM_ATTRIBUTE_OUT                0x0002
+#define PARAM_ATTRIBUTE_OPTIONAL           0x0004
+#define PARAM_ATTRIBUTE_RESERVED_MASK      0xf000
+#define PARAM_ATTRIBUTE_HAS_DEFAULT        0x1000
+#define PARAM_ATTRIBUTE_HAS_FIELD_MARSHAL  0x2000
+#define PARAM_ATTRIBUTE_UNUSED             0xcfe0
+
+/*
+ * 22.1.12 PropertyAttributes
+ */
+#define PROPERTY_ATTRIBUTE_SPECIAL_NAME    0x0200
+#define PROPERTY_ATTRIBUTE_RESERVED_MASK   0xf400
+#define PROPERTY_ATTRIBUTE_RT_SPECIAL_NAME 0x0400
+#define PROPERTY_ATTRIBUTE_HAS_DEFAULT     0x1000
+#define PROPERTY_ATTRIBUTE_UNUSED          0xe9ff
+
+#endif

+ 0 - 47
mono/metadata/typeattr.h

@@ -1,47 +0,0 @@
-#ifndef _MONO_METADATA_BITMASK_H_
-#define _MONO_METADATA_BITMASK_H_
-/*
- * Flags for bitmasks in the metadata tables
- */
-
-/*
- * Type Attributes (21.1.13).
- */
-#define TYPE_ATTRIBUTE_VISIBILITY_MASK       0x00000007
-#define TYPE_ATTRIBUTE_NOT_PUBLIC            0x00000000
-#define TYPE_ATTRIBUTE_PUBLIC                0x00000001
-#define TYPE_ATTRIBUTE_NESTED_PUBLIC         0x00000002
-#define TYPE_ATTRIBUTE_NESTED_PRIVATE        0x00000003
-#define TYPE_ATTRIBUTE_NESTED_FAMILY         0x00000004
-#define TYPE_ATTRIBUTE_NESTED_ASSEMBLY       0x00000005
-#define TYPE_ATTRIBUTE_NESTED_FAM_AND_ASSEM  0x00000006
-#define TYPE_ATTRIBUTE_NESTED_FAM_OR_ASSEM   0x00000007
-
-#define TYPE_ATTRIBUTE_LAYOUT_MASK           0x00000018
-#define TYPE_ATTRIBUTE_AUTO_LAYOUT           0x00000000
-#define TYPE_ATTRIBUTE_SEQUENTIAL_LAYOUT     0x00000008
-#define TYPE_ATTRIBUTE_EXPLICIT_LAYOUT       0x00000010
-
-#define TYPE_ATTRIBUTE_CLASS_SEMANTIC_MASK   0x00000020
-#define TYPE_ATTRIBUTE_CLASS                 0x00000000
-#define TYPE_ATTRIBUTE_INTERFACE             0x00000020
-
-#define TYPE_ATTRIBUTE_ABSTRACT              0x00000080
-#define TYPE_ATTRIBUTE_SEALED                0x00000100
-#define TYPE_ATTRIBUTE_SPECIAL_NAME          0x00000400
-
-#define TYPE_ATTRIBUTE_IMPORT                0x00001000
-#define TYPE_ATTRIBUTE_SERIALIZABLE          0x00002000
-
-#define TYPE_ATTRIBUTE_STRING_FORMAT_MASK    0x00030000
-#define TYPE_ATTRIBUTE_ANSI_CLASS            0x00000000
-#define TYPE_ATTRIBUTE_UNICODE_CLASS         0x00010000
-#define TYPE_ATTRIBUTE_AUTO_CLASS            0x00020000
-
-#define TYPE_ATTRIBUTE_BEFORE_FIELD_INIT     0x00100000
-
-#define TYPE_ATTRIBUTE_RESERVED_MASK         0x00040800
-#define TYPE_ATTRIBUTE_RT_SPECIAL_NAME       0x00000800
-#define TYPE_ATTRIBUTE_HAS_SECURITY          0x00040000
-
-#endif

+ 9 - 1
web/download

@@ -24,11 +24,19 @@ href="ftp://ftp.gtk.org/pub/gtk/v1.2/glib-1.2.10.tar.gz">ftp://ftp.gtk.org/pub/g
 	we make the first tarball release.
 
 	<ul>
+		<a name="july-22">
+		<b>July 22, 2001</b>
+		<ul>
+		* <a href="archive/mcs-22-Jul-2001.tar.gz">mcs-22-Jul-2001.tar.gz</a>: CVS snapshot.
+		* <a href="archive/mcs-Jul-22-Jul-19-2001.tar.gz">Differences since 19</a>: CVS snapshot.
+		* <a href="archive/mcs-22">Release Notes</a>
+		</ul>
+
 		<a name="july-19">
 		<b>July 19th, 2001</b>
 		<ul>
 		* <a href="archive/mcs-19-Jul-2001.tar.gz">mcs-19-Jul-2001.tar.gz</a>: CVS snapshot.
-		* <a href="archive/mcs-Jul-17-Jul-19-2001.tar.gz">Differences since 15</a>: CVS snapshot.
+		* <a href="archive/mcs-Jul-17-Jul-19-2001.tar.gz">Differences since 17</a>: CVS snapshot.
 		* <a href="archive/mcs-19">Release Notes</a>
 		</ul>