Author: zoltan
Date: 2007-10-19 15:26:37 -0400 (Fri, 19 Oct 2007)
New Revision: 87844

Modified:
   trunk/mcs/class/corlib/System/AppDomain.cs
   trunk/mcs/class/corlib/System/ChangeLog
Log:
2007-10-19  Zoltan Varga  <[EMAIL PROTECTED]>

        * AppDomain.cs: Add NET 3.5 DefineDynamicAssembly () overloads.


Modified: trunk/mcs/class/corlib/System/AppDomain.cs
===================================================================
--- trunk/mcs/class/corlib/System/AppDomain.cs  2007-10-19 19:25:58 UTC (rev 
87843)
+++ trunk/mcs/class/corlib/System/AppDomain.cs  2007-10-19 19:26:37 UTC (rev 
87844)
@@ -51,6 +51,7 @@
 using System.Configuration.Assemblies;
 
 #if NET_2_0
+using System.Collections.Generic;
 using System.Runtime.ConstrainedExecution;
 #endif
 
@@ -432,6 +433,28 @@
                        return ab;
                }
 
+#if NET_2_0
+               // NET 3.5 method
+               public AssemblyBuilder DefineDynamicAssembly (AssemblyName 
name, AssemblyBuilderAccess access, string dir,
+                                                             Evidence evidence,
+                                                             PermissionSet 
requiredPermissions,
+                                                             PermissionSet 
optionalPermissions,
+                                                             PermissionSet 
refusedPermissions, bool isSynchronized, IEnumerable<CustomAttributeBuilder> 
assemblyAttributes)
+               {
+                       AssemblyBuilder ab = DefineDynamicAssembly (name, 
access, dir, evidence, requiredPermissions, optionalPermissions, 
refusedPermissions, isSynchronized);
+                       if (assemblyAttributes != null)
+                               foreach (CustomAttributeBuilder cb in 
assemblyAttributes) {
+                                       ab.SetCustomAttribute (cb);
+                               }
+                       return ab;
+               }
+
+               // NET 3.5 method
+               public AssemblyBuilder DefineDynamicAssembly (AssemblyName 
name, AssemblyBuilderAccess access, IEnumerable<CustomAttributeBuilder> 
assemblyAttributes) {
+                       return DefineDynamicAssembly (name, access, null, null, 
null, null, null, false, assemblyAttributes);
+               }
+#endif
+
                internal AssemblyBuilder DefineInternalDynamicAssembly 
(AssemblyName name, AssemblyBuilderAccess access)
                {
                        return new AssemblyBuilder (name, null, access, true);
@@ -553,7 +576,7 @@
                {
                        if (rawAssembly == null)
                                throw new ArgumentNullException ("rawAssembly");
-                               
+
                        Assembly assembly = LoadAssemblyRaw (rawAssembly, 
rawSymbolStore, securityEvidence, refonly);
                        assembly.FromByteArray = true;
                        return assembly;

Modified: trunk/mcs/class/corlib/System/ChangeLog
===================================================================
--- trunk/mcs/class/corlib/System/ChangeLog     2007-10-19 19:25:58 UTC (rev 
87843)
+++ trunk/mcs/class/corlib/System/ChangeLog     2007-10-19 19:26:37 UTC (rev 
87844)
@@ -1,3 +1,7 @@
+2007-10-19  Zoltan Varga  <[EMAIL PROTECTED]>
+
+       * AppDomain.cs: Add NET 3.5 DefineDynamicAssembly () overloads.
+
 2007-10-13  Zoltan Varga  <[EMAIL PROTECTED]>
 
        * Delegate.cs (CreateDelegate): Allow binding instance methods to 

_______________________________________________
Mono-patches maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches

Reply via email to