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

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

[Dotgnu-pnet-commits] CVS: pnetlib/runtime/System/Reflection/Emit Constr


From: Richard Baumann <address@hidden>
Subject: [Dotgnu-pnet-commits] CVS: pnetlib/runtime/System/Reflection/Emit ConstructorBuilder.cs, 1.7, 1.8
Date: Sat, 26 Jul 2003 11:37:04 -0400

Update of /cvsroot/dotgnu-pnet/pnetlib/runtime/System/Reflection/Emit
In directory subversions:/tmp/cvs-serv20903/runtime/System/Reflection/Emit

Modified Files:
        ConstructorBuilder.cs 
Log Message:
Fix attributes on constructors for dynamic types.


Index: ConstructorBuilder.cs
===================================================================
RCS file: 
/cvsroot/dotgnu-pnet/pnetlib/runtime/System/Reflection/Emit/ConstructorBuilder.cs,v
retrieving revision 1.7
retrieving revision 1.8
diff -C2 -r1.7 -r1.8
*** ConstructorBuilder.cs       26 May 2003 05:03:41 -0000      1.7
--- ConstructorBuilder.cs       26 Jul 2003 15:37:02 -0000      1.8
***************
*** 51,54 ****
--- 51,74 ----
                                                                Type[] 
parameterTypes)
                        {
+                               // Validate the parameters.
+                               if(name == null)
+                               {
+                                       throw new ArgumentNullException("name");
+                               }
+                               else if(name == String.Empty)
+                               {
+                                       throw new 
ArgumentException(_("Emit_NameEmpty"));
+                               }
+                               if((attributes & MethodAttributes.Static) == 0)
+                               {
+                                       callingConvention |= 
CallingConventions.HasThis;
+                               }
+                               if((attributes & MethodAttributes.Virtual) != 0)
+                               {
+                                       throw new ArgumentException(/* TODO */);
+                               }
+                               attributes |= MethodAttributes.SpecialName;
+                               attributes |= MethodAttributes.RTSpecialName;
+ 
                                // Set the internal state.
                                this.type = type;





reply via email to

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