dotgnu-pnet-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[dotgnu-pnet-commits] pnetlib ChangeLog HACKING runtime/System/Attrib...


From: Klaus Treichel
Subject: [dotgnu-pnet-commits] pnetlib ChangeLog HACKING runtime/System/Attrib...
Date: Mon, 12 Nov 2007 21:22:20 +0000

CVSROOT:        /cvsroot/dotgnu-pnet
Module name:    pnetlib
Changes by:     Klaus Treichel <ktreichel>      07/11/12 21:22:20

Modified files:
        .              : ChangeLog HACKING 
        runtime/System : AttributeTargets.cs AttributeUsageAttribute.cs 
                         FlagsAttribute.cs ObsoleteAttribute.cs 
                         ThreadStaticAttribute.cs 
        runtime/System/Diagnostics: ConditionalAttribute.cs 
        runtime/System/Reflection: DefaultMemberAttribute.cs 
        runtime/System/Runtime/CompilerServices: 
                                                 CompilationRelaxations.cs 
                                                 
CompilationRelaxationsAttribute.cs 
                                                 DecimalConstantAttribute.cs 
                                                 IndexerNameAttribute.cs 
                                                 MethodImplAttribute.cs 
        runtime/System/Runtime/InteropServices: FieldOffsetAttribute.cs 
                                                InAttribute.cs 
                                                MarshalAsAttribute.cs 
                                                OutAttribute.cs 
                                                StructLayoutAttribute.cs 
Added files:
        runtime/System : Action_1.cs Comparision_1.cs Converter_2.cs 
                         IComparable_1.cs IEquatable_1.cs Predicate_1.cs 
        runtime/System/Reflection: GenericParameterAttributes.cs 

Log message:
        Add some 2.0 stuff.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/pnetlib/ChangeLog?cvsroot=dotgnu-pnet&r1=1.2518&r2=1.2519
http://cvs.savannah.gnu.org/viewcvs/pnetlib/HACKING?cvsroot=dotgnu-pnet&r1=1.10&r2=1.11
http://cvs.savannah.gnu.org/viewcvs/pnetlib/runtime/System/AttributeTargets.cs?cvsroot=dotgnu-pnet&r1=1.6&r2=1.7
http://cvs.savannah.gnu.org/viewcvs/pnetlib/runtime/System/AttributeUsageAttribute.cs?cvsroot=dotgnu-pnet&r1=1.3&r2=1.4
http://cvs.savannah.gnu.org/viewcvs/pnetlib/runtime/System/FlagsAttribute.cs?cvsroot=dotgnu-pnet&r1=1.3&r2=1.4
http://cvs.savannah.gnu.org/viewcvs/pnetlib/runtime/System/ObsoleteAttribute.cs?cvsroot=dotgnu-pnet&r1=1.5&r2=1.6
http://cvs.savannah.gnu.org/viewcvs/pnetlib/runtime/System/ThreadStaticAttribute.cs?cvsroot=dotgnu-pnet&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/pnetlib/runtime/System/Action_1.cs?cvsroot=dotgnu-pnet&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/pnetlib/runtime/System/Comparision_1.cs?cvsroot=dotgnu-pnet&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/pnetlib/runtime/System/Converter_2.cs?cvsroot=dotgnu-pnet&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/pnetlib/runtime/System/IComparable_1.cs?cvsroot=dotgnu-pnet&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/pnetlib/runtime/System/IEquatable_1.cs?cvsroot=dotgnu-pnet&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/pnetlib/runtime/System/Predicate_1.cs?cvsroot=dotgnu-pnet&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/pnetlib/runtime/System/Diagnostics/ConditionalAttribute.cs?cvsroot=dotgnu-pnet&r1=1.3&r2=1.4
http://cvs.savannah.gnu.org/viewcvs/pnetlib/runtime/System/Reflection/DefaultMemberAttribute.cs?cvsroot=dotgnu-pnet&r1=1.5&r2=1.6
http://cvs.savannah.gnu.org/viewcvs/pnetlib/runtime/System/Reflection/GenericParameterAttributes.cs?cvsroot=dotgnu-pnet&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/pnetlib/runtime/System/Runtime/CompilerServices/CompilationRelaxations.cs?cvsroot=dotgnu-pnet&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/pnetlib/runtime/System/Runtime/CompilerServices/CompilationRelaxationsAttribute.cs?cvsroot=dotgnu-pnet&r1=1.3&r2=1.4
http://cvs.savannah.gnu.org/viewcvs/pnetlib/runtime/System/Runtime/CompilerServices/DecimalConstantAttribute.cs?cvsroot=dotgnu-pnet&r1=1.4&r2=1.5
http://cvs.savannah.gnu.org/viewcvs/pnetlib/runtime/System/Runtime/CompilerServices/IndexerNameAttribute.cs?cvsroot=dotgnu-pnet&r1=1.3&r2=1.4
http://cvs.savannah.gnu.org/viewcvs/pnetlib/runtime/System/Runtime/CompilerServices/MethodImplAttribute.cs?cvsroot=dotgnu-pnet&r1=1.3&r2=1.4
http://cvs.savannah.gnu.org/viewcvs/pnetlib/runtime/System/Runtime/InteropServices/FieldOffsetAttribute.cs?cvsroot=dotgnu-pnet&r1=1.4&r2=1.5
http://cvs.savannah.gnu.org/viewcvs/pnetlib/runtime/System/Runtime/InteropServices/InAttribute.cs?cvsroot=dotgnu-pnet&r1=1.4&r2=1.5
http://cvs.savannah.gnu.org/viewcvs/pnetlib/runtime/System/Runtime/InteropServices/MarshalAsAttribute.cs?cvsroot=dotgnu-pnet&r1=1.7&r2=1.8
http://cvs.savannah.gnu.org/viewcvs/pnetlib/runtime/System/Runtime/InteropServices/OutAttribute.cs?cvsroot=dotgnu-pnet&r1=1.4&r2=1.5
http://cvs.savannah.gnu.org/viewcvs/pnetlib/runtime/System/Runtime/InteropServices/StructLayoutAttribute.cs?cvsroot=dotgnu-pnet&r1=1.4&r2=1.5

Patches:
Index: ChangeLog
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnetlib/ChangeLog,v
retrieving revision 1.2518
retrieving revision 1.2519
diff -u -b -r1.2518 -r1.2519
--- ChangeLog   22 Oct 2007 08:14:08 -0000      1.2518
+++ ChangeLog   12 Nov 2007 21:22:18 -0000      1.2519
@@ -1,3 +1,50 @@
+2007-11-12  Klaus Treichel  <address@hidden>
+
+       * runtime/System/AttributeTargets.cs: Replace the conditional
+       CONFIG_GENERICS which wraps the GenericParameter element by
+       CONFIG_FRAMEWORK_2_0.
+
+       * runtime/System/AttributeUsageAttribute.cs,
+       runtime/System/FlagsAttribute.cs, runtime/System/ObsoleteAttribute.cs,
+       runtime/System/Runtime/CompilerServices/DecimalConstantAttribute.cs,
+       runtime/System/Runtime/CompilerServices/IndexerName.cs,
+       runtime/System/Runtime/CompilerServices/MethodImplAttribute.cs,
+       runtime/System/Runtime/CompilerServices/FieldOffsetAttribute.cs,
+       runtime/System/Runtime/InteropServices/InAttribute.cs,
+       runtime/System/Runtime/InteropServices/MarshalAsAttribute.cs,
+       runtime/System/Runtime/InteropServices/OutAttribute.cs,
+       runtime/System/Runtime/InteropServices/StructLayoutAttribute.cs:
+       Add AllowMultiple=false to the AttributeUsage attribute for 2.0.
+
+       * runtime/System/ThreadStaticAttribute.cs: Add AllowMultiple=false to 
the
+       AttributeUsage attribute for 2.0. Make the class sealed for 2.0.
+
+       * runtime/System/Diagnostics/ConditionalAttribute.cs: Add Inherited=true
+       to the AttributeUsage attribute for 2.0.
+
+       * runtime/System/Reflection/DefaultMemberAttribute.cs: Add
+       AllowMultiple=false and Inherited=true to the AttributeUsage attribute
+       for 2.0.
+
+       * runtime/System/Runtime/CompilerServices/CompilationRelaxations.cs:
+       Replace the conditional CONFIG_FRAMEWORK_1_2 by CONFIG_FRAMEWORK_2_0 and
+       add the missing 2.0 members.
+
+       * 
runtime/System/Runtime/CompilerServices/CompilationRelaxationsAttribute.cs:
+       Change the conditional !ECMA_COMPAT to CONFIG_FRAMEWORK_2_0, fix the
+       attrubute usage attribute according to ECMA 4 specs and add the check 
for
+       invalid attribute flag combinations. Remove the CONFIG_FRAMEWORK_1_2
+
+       * runtime/System/Action_1.cs, runtime/System/Comparision_1.cs,
+       runtime/System/Converter_2.cs, runtime/System/IComparable.cs,
+       runtime/System/IEquatable_1.cs, runtime/System/Predicate_1.cs: Add 
generic
+       delegates and interfaces for 2.0.
+
+       * runtime/System/Reflection/GenericParameterAttributes.cs: Add the
+       reneric parameter attributes for 2.0. 
+
+       * HACKING: Add a note about file naming conventions of generic classes.
+
 2007-10-22  Radek Polak  <address@hidden>
 
        * System/Net/Sockets/Socket.cs: Allow recieve and send timeout socket

Index: HACKING
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnetlib/HACKING,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -b -r1.10 -r1.11
--- HACKING     12 Jul 2004 12:22:21 -0000      1.10
+++ HACKING     12 Nov 2007 21:22:18 -0000      1.11
@@ -334,6 +334,9 @@
 
 G. One file, one class.  C# doesn't strictly require this, but it makes
    it a lot easier to locate classes within the source tree.
+   For generic classes the filename has to be the classname followed by
+   an underscore and the generic arity of the class.
+   Example: System.IComparable<T> is in System/IComparable_1.cs
 
 H. Namespaces are mapped to directories as follows: "A.B.C" is mapped
    to the directory "A/B/C".

Index: runtime/System/AttributeTargets.cs
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnetlib/runtime/System/AttributeTargets.cs,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -b -r1.6 -r1.7
--- runtime/System/AttributeTargets.cs  24 Nov 2003 04:08:36 -0000      1.6
+++ runtime/System/AttributeTargets.cs  12 Nov 2007 21:22:18 -0000      1.7
@@ -38,7 +38,7 @@
        Parameter                = 0x0800,
        Delegate                 = 0x1000,
        ReturnValue              = 0x2000,
-#if CONFIG_GENERICS
+#if CONFIG_FRAMEWORK_2_0
        GenericParameter = 0x4000,
        All                              = 0x7FFF
 #else

Index: runtime/System/AttributeUsageAttribute.cs
===================================================================
RCS file: 
/cvsroot/dotgnu-pnet/pnetlib/runtime/System/AttributeUsageAttribute.cs,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- runtime/System/AttributeUsageAttribute.cs   4 Sep 2003 04:47:13 -0000       
1.3
+++ runtime/System/AttributeUsageAttribute.cs   12 Nov 2007 21:22:18 -0000      
1.4
@@ -22,7 +22,11 @@
 namespace System
 {
 
+#if CONFIG_FRAMEWORK_2_0
+[AttributeUsage(AttributeTargets.Class, AllowMultiple=false, Inherited=true)]
+#else
 [AttributeUsage(AttributeTargets.Class, Inherited=true)]
+#endif
 public sealed class AttributeUsageAttribute : Attribute
 {
        // Internal state.

Index: runtime/System/FlagsAttribute.cs
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnetlib/runtime/System/FlagsAttribute.cs,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- runtime/System/FlagsAttribute.cs    4 Sep 2003 04:47:13 -0000       1.3
+++ runtime/System/FlagsAttribute.cs    12 Nov 2007 21:22:19 -0000      1.4
@@ -22,7 +22,11 @@
 namespace System
 {
 
+#if CONFIG_FRAMEWORK_2_0
+[AttributeUsage(AttributeTargets.Enum, AllowMultiple=false, Inherited=false)]
+#else
 [AttributeUsage(AttributeTargets.Enum, Inherited=false)]
+#endif
 public class FlagsAttribute : Attribute
 {
 }; // class FlagsAttribute

Index: runtime/System/ObsoleteAttribute.cs
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnetlib/runtime/System/ObsoleteAttribute.cs,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -b -r1.5 -r1.6
--- runtime/System/ObsoleteAttribute.cs 4 Sep 2003 04:47:13 -0000       1.5
+++ runtime/System/ObsoleteAttribute.cs 12 Nov 2007 21:22:19 -0000      1.6
@@ -32,6 +32,9 @@
                                AttributeTargets.Event |
                                AttributeTargets.Interface |
                                AttributeTargets.Delegate,
+#if CONFIG_FRAMEWORK_2_0
+                               AllowMultiple=false,
+#endif
                                Inherited=false)]
 public sealed class ObsoleteAttribute : Attribute
 {

Index: runtime/System/ThreadStaticAttribute.cs
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnetlib/runtime/System/ThreadStaticAttribute.cs,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- runtime/System/ThreadStaticAttribute.cs     18 Apr 2003 09:17:52 -0000      
1.1
+++ runtime/System/ThreadStaticAttribute.cs     12 Nov 2007 21:22:19 -0000      
1.2
@@ -28,8 +28,13 @@
 #if !ECMA_COMPAT
 [Serializable]
 #endif
+#if CONFIG_FRAMEWORK_2_0
+[AttributeUsage(AttributeTargets.Field, AllowMultiple=false, Inherited=false)]
+public sealed class ThreadStaticAttribute : Attribute
+#else
 [AttributeUsage(AttributeTargets.Field, Inherited=false)]
 public class ThreadStaticAttribute : Attribute
+#endif
 {
        // Constructor.
        public ThreadStaticAttribute() {}

Index: runtime/System/Diagnostics/ConditionalAttribute.cs
===================================================================
RCS file: 
/cvsroot/dotgnu-pnet/pnetlib/runtime/System/Diagnostics/ConditionalAttribute.cs,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- runtime/System/Diagnostics/ConditionalAttribute.cs  17 Sep 2003 04:50:55 
-0000      1.3
+++ runtime/System/Diagnostics/ConditionalAttribute.cs  12 Nov 2007 21:22:19 
-0000      1.4
@@ -22,7 +22,11 @@
 namespace System.Diagnostics
 {
 
+#if CONFIG_FRAMEWORK_2_0
+[AttributeUsage(AttributeTargets.Method, AllowMultiple=true, Inherited=true)]
+#else
 [AttributeUsage(AttributeTargets.Method, AllowMultiple=true)]
+#endif
 public sealed class ConditionalAttribute : Attribute
 {
        // Internal state.

Index: runtime/System/Reflection/DefaultMemberAttribute.cs
===================================================================
RCS file: 
/cvsroot/dotgnu-pnet/pnetlib/runtime/System/Reflection/DefaultMemberAttribute.cs,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -b -r1.5 -r1.6
--- runtime/System/Reflection/DefaultMemberAttribute.cs 4 Sep 2003 04:47:13 
-0000       1.5
+++ runtime/System/Reflection/DefaultMemberAttribute.cs 12 Nov 2007 21:22:19 
-0000      1.6
@@ -24,7 +24,13 @@
 
 [AttributeUsage(AttributeTargets.Class |
                                AttributeTargets.Struct |
+#if CONFIG_FRAMEWORK_2_0
+                               AttributeTargets.Interface,
+                               AllowMultiple=false,
+                               Inherited=true)]
+#else
                                AttributeTargets.Interface)]
+#endif
 public sealed class DefaultMemberAttribute : Attribute
 {
 

Index: runtime/System/Runtime/CompilerServices/CompilationRelaxations.cs
===================================================================
RCS file: 
/cvsroot/dotgnu-pnet/pnetlib/runtime/System/Runtime/CompilerServices/CompilationRelaxations.cs,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- runtime/System/Runtime/CompilerServices/CompilationRelaxations.cs   22 Jul 
2004 04:15:00 -0000      1.1
+++ runtime/System/Runtime/CompilerServices/CompilationRelaxations.cs   12 Nov 
2007 21:22:19 -0000      1.2
@@ -22,15 +22,24 @@
 namespace System.Runtime.CompilerServices
 {
 
-#if CONFIG_FRAMEWORK_1_2
+#if CONFIG_FRAMEWORK_2_0
 
 [Flags]
 public enum CompilationRelaxations
 {
-       NoStringInterning = 0x0008
+       StringInterning                                 = 0x0004,
+       NoStringInterning                               = 0x0008,
+       StrictNullReferenceException    = 0x0010,
+       RelaxedNullReferenceException   = 0x0020,
+       StrictInvalidCastException              = 0x0040,
+       RelaxedInvalidCastException             = 0x0080,
+       StrictArrayExceptions                   = 0x0100,
+       RelaxedArrayExceptions                  = 0x0200,
+       StrictOverflowExceptions                = 0x0400,
+       RelaxedOverflowExceptions               = 0x0800
 
 }; // enum CompilationRelaxations
 
-#endif // CONFIG_FRAMEWORK_1_2
+#endif // CONFIG_FRAMEWORK_2_0
 
 }; // namespace System.Runtime.CompilerServices

Index: 
runtime/System/Runtime/CompilerServices/CompilationRelaxationsAttribute.cs
===================================================================
RCS file: 
/cvsroot/dotgnu-pnet/pnetlib/runtime/System/Runtime/CompilerServices/CompilationRelaxationsAttribute.cs,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- runtime/System/Runtime/CompilerServices/CompilationRelaxationsAttribute.cs  
22 Jul 2004 04:15:00 -0000      1.3
+++ runtime/System/Runtime/CompilerServices/CompilationRelaxationsAttribute.cs  
12 Nov 2007 21:22:19 -0000      1.4
@@ -22,26 +22,71 @@
 namespace System.Runtime.CompilerServices
 {
 
-#if !ECMA_COMPAT
+#if CONFIG_FRAMEWORK_2_0
 
-[AttributeUsage(AttributeTargets.Module)]
+[AttributeUsage(AttributeTargets.Assembly |
+                               AttributeTargets.Class |
+                               AttributeTargets.Struct |
+                               AttributeTargets.Constructor |
+                               AttributeTargets.Method,
+                               AllowMultiple=false, Inherited=false)]
 public class CompilationRelaxationsAttribute : Attribute
 {
 
+       private const Int32 invalidStringRelaxations = 0x000C;
+
+       private const Int32 invalidNullReferenceRelaxations = 0x0030;
+
+       private const Int32 invalidInvalidCastRelaxations = 0x00C0;
+
+       private const Int32 invalidArrayRelaxations =  0x0300;
+
+       private const Int32 invalidOverflowRelaxations = 0x0C00;
+
        // Internal state.
        private int value;
 
+       private void Check(Int32 relaxation)
+       {
+               if((relaxation & invalidStringRelaxations) ==
+                                                                               
        invalidStringRelaxations)
+               {
+                       throw new ArgumentException();
+               }
+               if((relaxation & invalidNullReferenceRelaxations) == 
+                                                                               
        invalidNullReferenceRelaxations)
+               {
+                       throw new ArgumentException();
+               }
+               if((relaxation & invalidInvalidCastRelaxations) == 
+                                                                               
        invalidInvalidCastRelaxations)
+               {
+                       throw new ArgumentException();
+               }
+               if((relaxation & invalidArrayRelaxations) == 
+                                                                               
        invalidArrayRelaxations)
+               {
+                       throw new ArgumentException();
+               }
+               if((relaxation & invalidOverflowRelaxations) == 
+                                                                               
        invalidOverflowRelaxations)
+               {
+                       throw new ArgumentException();
+               }
+       }
+
        // Constructors.
        public CompilationRelaxationsAttribute(int relaxations)
                        {
+                               Check(relaxations);
                                value = relaxations;
                        }
-#if CONFIG_FRAMEWORK_1_2
+
        public CompilationRelaxationsAttribute(CompilationRelaxations 
relaxations)
                        {
+                               Check((int)relaxations);
                                value = (int)relaxations;
                        }
-#endif // CONFIG_FRAMEWORK_1_2
 
        // Properties.
        public int CompilationRelaxations
@@ -54,6 +99,6 @@
 
 }; // class CompilationRelaxationsAttribute
 
-#endif // !ECMA_COMPAT
+#endif // !CONFIG_FRAMEWORK_2_0
 
 }; // namespace System.Runtime.CompilerServices

Index: runtime/System/Runtime/CompilerServices/DecimalConstantAttribute.cs
===================================================================
RCS file: 
/cvsroot/dotgnu-pnet/pnetlib/runtime/System/Runtime/CompilerServices/DecimalConstantAttribute.cs,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- runtime/System/Runtime/CompilerServices/DecimalConstantAttribute.cs 4 Sep 
2003 04:47:13 -0000       1.4
+++ runtime/System/Runtime/CompilerServices/DecimalConstantAttribute.cs 12 Nov 
2007 21:22:19 -0000      1.5
@@ -25,8 +25,15 @@
 #if CONFIG_EXTENDED_NUMERICS
 
 [CLSCompliant(false)]
+#if CONFIG_FRAMEWORK_2_0
+[AttributeUsage(AttributeTargets.Field |
+                               AttributeTargets.Parameter,
+                               AllowMultiple=false,
+                               Inherited=false)]
+#else
 [AttributeUsage(AttributeTargets.Field |
                                AttributeTargets.Parameter, Inherited=false)]
+#endif
 public sealed class DecimalConstantAttribute : Attribute
 {
 

Index: runtime/System/Runtime/CompilerServices/IndexerNameAttribute.cs
===================================================================
RCS file: 
/cvsroot/dotgnu-pnet/pnetlib/runtime/System/Runtime/CompilerServices/IndexerNameAttribute.cs,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- runtime/System/Runtime/CompilerServices/IndexerNameAttribute.cs     23 Apr 
2003 05:39:49 -0000      1.3
+++ runtime/System/Runtime/CompilerServices/IndexerNameAttribute.cs     12 Nov 
2007 21:22:19 -0000      1.4
@@ -25,7 +25,11 @@
 // This class is not ECMA-compatible, but is needed to implement
 // the C# compiler's indexer name override mechanism.
 
+#if CONFIG_FRAMEWORK_2_0
+[AttributeUsage(AttributeTargets.Property, AllowMultiple=false, 
Inherited=false)]
+#else
 [AttributeUsage(AttributeTargets.Property, Inherited=true)]
+#endif
 public sealed class IndexerNameAttribute : Attribute
 {
 

Index: runtime/System/Runtime/CompilerServices/MethodImplAttribute.cs
===================================================================
RCS file: 
/cvsroot/dotgnu-pnet/pnetlib/runtime/System/Runtime/CompilerServices/MethodImplAttribute.cs,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- runtime/System/Runtime/CompilerServices/MethodImplAttribute.cs      4 Sep 
2003 04:47:13 -0000       1.3
+++ runtime/System/Runtime/CompilerServices/MethodImplAttribute.cs      12 Nov 
2007 21:22:19 -0000      1.4
@@ -25,6 +25,9 @@
 using System;
 
 [AttributeUsage(AttributeTargets.Method | AttributeTargets.Constructor,
+#if CONFIG_FRAMEWORK_2_0
+                               AllowMultiple=false,
+#endif
                                Inherited=false)]
 public sealed class MethodImplAttribute : Attribute
 {

Index: runtime/System/Runtime/InteropServices/FieldOffsetAttribute.cs
===================================================================
RCS file: 
/cvsroot/dotgnu-pnet/pnetlib/runtime/System/Runtime/InteropServices/FieldOffsetAttribute.cs,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- runtime/System/Runtime/InteropServices/FieldOffsetAttribute.cs      4 Sep 
2003 04:47:13 -0000       1.4
+++ runtime/System/Runtime/InteropServices/FieldOffsetAttribute.cs      12 Nov 
2007 21:22:19 -0000      1.5
@@ -24,7 +24,11 @@
 
 #if CONFIG_RUNTIME_INFRA
 
+#if CONFIG_FRAMEWORK_2_0
+[AttributeUsage(AttributeTargets.Field, AllowMultiple=false, Inherited=false)]
+#else
 [AttributeUsage(AttributeTargets.Field, Inherited=false)]
+#endif
 public sealed class FieldOffsetAttribute : Attribute
 {
        // Internal state.

Index: runtime/System/Runtime/InteropServices/InAttribute.cs
===================================================================
RCS file: 
/cvsroot/dotgnu-pnet/pnetlib/runtime/System/Runtime/InteropServices/InAttribute.cs,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- runtime/System/Runtime/InteropServices/InAttribute.cs       4 Sep 2003 
04:47:13 -0000       1.4
+++ runtime/System/Runtime/InteropServices/InAttribute.cs       12 Nov 2007 
21:22:19 -0000      1.5
@@ -24,7 +24,12 @@
 
 #if CONFIG_RUNTIME_INFRA
 
+#if CONFIG_FRAMEWORK_2_0
+[AttributeUsage(AttributeTargets.Parameter, AllowMultiple=false,
+                               Inherited=false)]
+#else
 [AttributeUsage(AttributeTargets.Parameter, Inherited=false)]
+#endif
 public sealed class InAttribute : Attribute
 {
 

Index: runtime/System/Runtime/InteropServices/MarshalAsAttribute.cs
===================================================================
RCS file: 
/cvsroot/dotgnu-pnet/pnetlib/runtime/System/Runtime/InteropServices/MarshalAsAttribute.cs,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -b -r1.7 -r1.8
--- runtime/System/Runtime/InteropServices/MarshalAsAttribute.cs        4 Sep 
2003 04:47:13 -0000       1.7
+++ runtime/System/Runtime/InteropServices/MarshalAsAttribute.cs        12 Nov 
2007 21:22:20 -0000      1.8
@@ -27,6 +27,9 @@
 [AttributeUsage(AttributeTargets.Field |
                                AttributeTargets.Parameter |
                                AttributeTargets.ReturnValue,
+#if CONFIG_FRAMEWORK_2_0
+                               AllowMultiple=false,
+#endif
                                Inherited=false)]
 public sealed class MarshalAsAttribute : Attribute
 {

Index: runtime/System/Runtime/InteropServices/OutAttribute.cs
===================================================================
RCS file: 
/cvsroot/dotgnu-pnet/pnetlib/runtime/System/Runtime/InteropServices/OutAttribute.cs,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- runtime/System/Runtime/InteropServices/OutAttribute.cs      4 Sep 2003 
04:47:13 -0000       1.4
+++ runtime/System/Runtime/InteropServices/OutAttribute.cs      12 Nov 2007 
21:22:20 -0000      1.5
@@ -24,7 +24,12 @@
 
 #if CONFIG_RUNTIME_INFRA
 
+#if CONFIG_FRAMEWORK_2_0
+[AttributeUsage(AttributeTargets.Parameter, AllowMultiple=false,
+                               Inherited=false)]
+#else
 [AttributeUsage(AttributeTargets.Parameter, Inherited=false)]
+#endif
 public sealed class OutAttribute : Attribute
 {
 

Index: runtime/System/Runtime/InteropServices/StructLayoutAttribute.cs
===================================================================
RCS file: 
/cvsroot/dotgnu-pnet/pnetlib/runtime/System/Runtime/InteropServices/StructLayoutAttribute.cs,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- runtime/System/Runtime/InteropServices/StructLayoutAttribute.cs     4 Sep 
2003 04:47:13 -0000       1.4
+++ runtime/System/Runtime/InteropServices/StructLayoutAttribute.cs     12 Nov 
2007 21:22:20 -0000      1.5
@@ -25,6 +25,9 @@
 #if CONFIG_RUNTIME_INFRA
 
 [AttributeUsage(AttributeTargets.Class | AttributeTargets.Struct,
+#if CONFIG_FRAMEWORK_2_0
+                               AllowMultiple=false,
+#endif
                                Inherited=false)]
 public sealed class StructLayoutAttribute : Attribute
 {

Index: runtime/System/Action_1.cs
===================================================================
RCS file: runtime/System/Action_1.cs
diff -N runtime/System/Action_1.cs
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ runtime/System/Action_1.cs  12 Nov 2007 21:22:18 -0000      1.1
@@ -0,0 +1,33 @@
+/*
+ * Action_1.cs - Implementation of the "System.Action<T>" delegate.
+ *
+ * Copyright (C) 2007  Southern Storm Software, Pty Ltd.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ */
+
+namespace System
+{
+
+#if CONFIG_FRAMEWORK_2_0 && CONFIG_GENERICS
+
+using System;
+
+[CLSCompliant(true)]
+public delegate void Action<T>(T obj);
+
+#endif // CONFIG_FRAMEWORK_2_0 && CONFIG_GENERICS
+
+}; // namespace System

Index: runtime/System/Comparision_1.cs
===================================================================
RCS file: runtime/System/Comparision_1.cs
diff -N runtime/System/Comparision_1.cs
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ runtime/System/Comparision_1.cs     12 Nov 2007 21:22:18 -0000      1.1
@@ -0,0 +1,31 @@
+/*
+ * Comparision_1.cs - Implementation of the "System.Comparision<T>" delegate.
+ *
+ * Copyright (C) 2007  Southern Storm Software, Pty Ltd.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ */
+
+namespace System
+{
+
+#if CONFIG_FRAMEWORK_2_0 && CONFIG_GENERICS
+
+[CLSCompliant(true)]
+public delegate void Comparision<T>(T x, T y);
+
+#endif // CONFIG_FRAMEWORK_2_0 && CONFIG_GENERICS
+
+}; // namespace System

Index: runtime/System/Converter_2.cs
===================================================================
RCS file: runtime/System/Converter_2.cs
diff -N runtime/System/Converter_2.cs
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ runtime/System/Converter_2.cs       12 Nov 2007 21:22:18 -0000      1.1
@@ -0,0 +1,31 @@
+/*
+ * Converter_2.cs - Implementation of the "System.Converter<T,U>" delegate.
+ *
+ * Copyright (C) 2007  Southern Storm Software, Pty Ltd.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ */
+
+namespace System
+{
+
+#if CONFIG_FRAMEWORK_2_0 && CONFIG_GENERICS
+
+[CLSCompliant(true)]
+public delegate U Converter<T, U>(T from);
+
+#endif // CONFIG_FRAMEWORK_2_0 && CONFIG_GENERICS
+
+}; // namespace System

Index: runtime/System/IComparable_1.cs
===================================================================
RCS file: runtime/System/IComparable_1.cs
diff -N runtime/System/IComparable_1.cs
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ runtime/System/IComparable_1.cs     12 Nov 2007 21:22:19 -0000      1.1
@@ -0,0 +1,36 @@
+/*
+ * IComparable_1.cs - Implementation of the "System.IComparable<T>" interface.
+ *
+ * Copyright (C) 2007 Southern Storm Software, Pty Ltd.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ */
+
+namespace System
+{
+
+#if CONFIG_FRAMEWORK_2_0 && CONFIG_GENERICS
+
+[CLSCompliant(true)]
+public interface IComparable<T>
+{
+
+       int CompareTo(T obj);
+
+}; // generic version of the interface IComparable
+
+#endif // CONFIG_FRAMEWORK_2_0 && CONFIG_GENERICS
+
+}; // namespace System

Index: runtime/System/IEquatable_1.cs
===================================================================
RCS file: runtime/System/IEquatable_1.cs
diff -N runtime/System/IEquatable_1.cs
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ runtime/System/IEquatable_1.cs      12 Nov 2007 21:22:19 -0000      1.1
@@ -0,0 +1,36 @@
+/*
+ * IEquatable.cs - Implementation of the "System.IEqutable" interface.
+ *
+ * Copyright (C) 2007 Southern Storm Software, Pty Ltd.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ */
+
+namespace System
+{
+
+#if CONFIG_FRAMEWORK_2_0 && CONFIG_GENERICS
+
+[CLSCompliant(true)]
+public interface IEquatable<T>
+{
+
+       bool Equals(T obj);
+
+}; // interface IEquatable
+
+#endif // CONFIG_FRAMEWORK_2_0 && CONFIG_GENERICS
+
+}; // namespace System

Index: runtime/System/Predicate_1.cs
===================================================================
RCS file: runtime/System/Predicate_1.cs
diff -N runtime/System/Predicate_1.cs
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ runtime/System/Predicate_1.cs       12 Nov 2007 21:22:19 -0000      1.1
@@ -0,0 +1,31 @@
+/*
+ * Predicate_1.cs - Implementation of the "System.Predicate<T>" delegate.
+ *
+ * Copyright (C) 2007  Southern Storm Software, Pty Ltd.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ */
+
+namespace System
+{
+
+#if CONFIG_FRAMEWORK_2_0 && CONFIG_GENERICS
+
+[CLSCompliant(true)]
+public delegate Boolean Predicate<T>(T obj);
+
+#endif // CONFIG_FRAMEWORK_2_0 && CONFIG_GENERICS
+
+}; // namespace System

Index: runtime/System/Reflection/GenericParameterAttributes.cs
===================================================================
RCS file: runtime/System/Reflection/GenericParameterAttributes.cs
diff -N runtime/System/Reflection/GenericParameterAttributes.cs
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ runtime/System/Reflection/GenericParameterAttributes.cs     12 Nov 2007 
21:22:19 -0000      1.1
@@ -0,0 +1,43 @@
+/*
+ * GenericParameterAttributes.cs - Implementation of the
+ *                     "System.Reflection.GenericParameterAttributes" class.
+ *
+ * Copyright (C) 2007  Southern Storm Software, Pty Ltd.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ */
+
+namespace System.Reflection
+{
+
+#if CONFIG_FRAMEWORK_2_0
+
+[Flags]
+public enum GenericParameterAttributes
+{
+       None                                                    = 0x0000,
+       Covariant                                               = 0x0001,
+       Contravariant                                   = 0x0002,
+       VarianceMask                                    = 0x0003,
+       ReferenceTypeConstraint                 = 0x0004,
+       NotNullableValueTypeConstraint  = 0x0008,
+       DefaultConstructorConstraint    = 0x0010,
+       SpecialConstraintMask                   = 0x001C
+
+}; // class GenericParameterAttributes
+
+#endif // CONFIG_FRAMEWORK_2_0
+
+}; // namespace System.Reflection




reply via email to

[Prev in Thread] Current Thread [Next in Thread]