Browse Source

2006-03-15 Zoltan Varga <[email protected]>

	* AssemblyBuilder.cs (AddTypeForwarder): New internal method for
	adding type forwarders to an assembly.

svn path=/trunk/mcs/; revision=57983
Zoltan Varga 20 năm trước cách đây
mục cha
commit
e4bf6d5ecb

+ 16 - 0
mcs/class/corlib/System.Reflection.Emit/AssemblyBuilder.cs

@@ -111,6 +111,7 @@ namespace System.Reflection.Emit {
 		PortableExecutableKinds peKind;
 		ImageFileMachine machine;
 		bool corlib_internal;
+		Type[] type_forwarders;
 		#endregion
 		internal Type corlib_object_type = typeof (System.Object);
 		internal Type corlib_value_type = typeof (System.ValueType);
@@ -298,6 +299,21 @@ namespace System.Reflection.Emit {
 			resources [p].data = blob;
 		}
 
+#if NET_2_0
+		internal void AddTypeForwarder (Type t) {
+			if (t == null)
+				throw new ArgumentNullException ("t");
+
+			if (type_forwarders == null) {
+				type_forwarders = new Type [1] { t };
+			} else {
+				Type[] arr = new Type [type_forwarders.Length + 1];
+				Array.Copy (type_forwarders, arr, type_forwarders.Length);
+				type_forwarders = arr;
+			}
+		}
+#endif
+
 		public ModuleBuilder DefineDynamicModule (string name)
 		{
 			return DefineDynamicModule (name, name, false, true);

+ 5 - 0
mcs/class/corlib/System.Reflection.Emit/ChangeLog

@@ -1,3 +1,8 @@
+2006-03-15  Zoltan Varga  <[email protected]>
+
+	* AssemblyBuilder.cs (AddTypeForwarder): New internal method for
+	adding type forwarders to an assembly.
+
 2006-02-27  Gert Driesen  <[email protected]>
 
 	* ConstructorBuilder.cs: In AddDeclarativeSecurity, throw an