2010-04-16 Sebastien Pouliot <sebastien@ximian.com>
authorSebastien Pouliot <sebastien@ximian.com>
Fri, 16 Apr 2010 13:21:02 +0000 (13:21 -0000)
committerSebastien Pouliot <sebastien@ximian.com>
Fri, 16 Apr 2010 13:21:02 +0000 (13:21 -0000)
* Actions.cs: Forward Action() to mscorlib.dll and add the new
Action<...T16> delegates
* Funcs.cs: Add the new Func<...T16> delegates
* TimeZoneInfo.cs: Forward to mscorlib.dll

svn path=/trunk/mcs/; revision=155630

mcs/class/System.Core/System/Actions.cs
mcs/class/System.Core/System/ChangeLog
mcs/class/System.Core/System/Funcs.cs
mcs/class/System.Core/System/TimeZoneInfo.cs

index f2a1126214b10806c04da68ba8c5c05b3287f60f..5100db90a02453986bcce04fe65854f92168c880 100644 (file)
@@ -4,7 +4,7 @@
 // Authors:
 //     Marek Safar  <marek.safar@gmail.com>
 //
-// Copyright (C) 2007 Novell, Inc (http://www.novell.com)
+// Copyright (C) 2007, 2010 Novell, Inc (http://www.novell.com)
 //
 // Permission is hereby granted, free of charge, to any person obtaining
 // a copy of this software and associated documentation files (the
 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 //
 
-#if NET_4_0 || BOOTSTRAP_NET_4_0
 using System;
 using System.Runtime.CompilerServices;
 
+#if NET_4_0 || BOOTSTRAP_NET_4_0
 [assembly:TypeForwardedTo (typeof(Action<>))]
 [assembly:TypeForwardedTo (typeof(Action<,>))]
 [assembly:TypeForwardedTo (typeof(Action<,,>))]
 [assembly:TypeForwardedTo (typeof(Action<,,,>))]
+#elif MOONLIGHT
+[assembly:TypeForwardedTo (typeof (Action))]
 #endif
 
 namespace System
@@ -62,6 +64,28 @@ namespace System
 
        public delegate void Action<in T1, in T2, in T3, in T4, in T5, in T6, in T7, in T8, in T9, in T10, in T11, in T12, in T13, in T14, in T15, in T16> (
                T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, T11 arg11, T12 arg12, T13 arg13, T14 arg14, T15 arg15, T16 arg16);
+#elif MOONLIGHT
+       // Action, Action<T> are defined in mscorlib.dll for SL4
+       public delegate void Action <T1, T2> (T1 arg1, T2 arg2);
+       public delegate void Action <T1, T2, T3> (T1 arg1, T2 arg2, T3 arg3);
+       public delegate void Action <T1, T2, T3, T4> (T1 arg1, T2 arg2, T3 arg3, T4 arg4);
+       // Action<T1..T5> to <T1..T8> are defined in mscorlib.dll for SL4
+       public delegate void Action <T1, T2, T3, T4, T5, T6, T7, T8, T9> (
+               T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9);
+       public delegate void Action <T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> (
+               T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10);
+       public delegate void Action <T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> (
+               T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, T11 arg11);
+       public delegate void Action <T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> (
+               T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, T11 arg11, T12 arg12);
+       public delegate void Action <T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> (
+               T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, T11 arg11, T12 arg12, T13 arg13);
+       public delegate void Action <T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> (
+               T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, T11 arg11, T12 arg12, T13 arg13, T14 arg14);
+       public delegate void Action <T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> (
+               T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, T11 arg11, T12 arg12, T13 arg13, T14 arg14, T15 arg15);
+       public delegate void Action <T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> (
+               T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, T11 arg11, T12 arg12, T13 arg13, T14 arg14, T15 arg15, T16 arg16);
 #else
        public delegate void Action ();
        public delegate void Action<T1, T2> (T1 arg1, T2 arg2);
index 777b2cf559925b8176cd4239d3674df671505fdb..30442613a91c25ef6b25835cf07b25c4419d2e69 100644 (file)
@@ -1,3 +1,10 @@
+2010-04-16  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * Actions.cs: Forward Action() to mscorlib.dll and add the new
+       Action<...T16> delegates
+       * Funcs.cs: Add the new Func<...T16> delegates
+       * TimeZoneInfo.cs: Forward to mscorlib.dll
+
 2010-03-30  Sebastien Pouliot  <sebastien@ximian.com>
 
        * InvalidTimeZoneException.cs
index c42b582a64362691c01458fad154e3d80b29eeb2..f12496d1619d4e0fcea60d4e70578b17af6d4bc6 100644 (file)
@@ -68,5 +68,33 @@ namespace System
        public delegate TResult Func<T1, T2, TResult> (T1 arg1, T2 arg2);
        public delegate TResult Func<T1, T2, T3, TResult> (T1 arg1, T2 arg2, T3 arg3);
        public delegate TResult Func<T1, T2, T3, T4, TResult> (T1 arg1, T2 arg2, T3 arg3, T4 arg4);
+
+       #if MOONLIGHT
+       // Func<T1..T5,Result> to >T1..T8,TResult> are defined in mscorlib.dll for SL4
+
+       public delegate TResult Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, TResult> (
+               T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9);
+
+       public delegate TResult Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, TResult> (
+               T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10);
+
+       public delegate TResult Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, TResult> (
+               T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, T11 arg11);
+
+       public delegate TResult Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, TResult> (
+               T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, T11 arg11, T12 arg12);
+
+       public delegate TResult Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, TResult> (
+               T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, T11 arg11, T12 arg12, T13 arg13);
+
+       public delegate TResult Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, TResult> (
+               T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, T11 arg11, T12 arg12, T13 arg13, T14 arg14);
+
+       public delegate TResult Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, TResult> (
+               T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, T11 arg11, T12 arg12, T13 arg13, T14 arg14, T15 arg15);
+
+       public delegate TResult Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, TResult> (
+               T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, T11 arg11, T12 arg12, T13 arg13, T14 arg14, T15 arg15, T16 arg16);
+       #endif
 #endif
 }
index 0c1fa0fec3661477c106f697b33d0484199a2545..da0d94fc0003a5a1c68c786825d894dc53133f1f 100644 (file)
@@ -27,7 +27,7 @@
 using System;
 using System.Runtime.CompilerServices;
 
-#if !INSIDE_CORLIB && (NET_4_0 || BOOTSTRAP_NET_4_0)
+#if !INSIDE_CORLIB && (NET_4_0 || BOOTSTRAP_NET_4_0 || MOONLIGHT)
 
 [assembly:TypeForwardedTo (typeof(TimeZoneInfo))]