2007-01-25 Atsushi Enomoto <atsushi@ximian.com>
[mono.git] / mcs / class / corlib / System.Reflection.Emit / MethodRental.cs
index 2382a6b10b4d6e9f95b0bc9763271eebbcbee468..d82ced5c3261ed522bf436ec120adf25d4c7c37b 100644 (file)
@@ -1,14 +1,10 @@
 //
-// System.Reflection.Emit/ILGenerator.cs
+// System.Reflection.Emit/MethodRental.cs
 //
 // Author:
 //   Zoltan Varga (vargaz@freemail.hu)
 //
-// (C) 2004 Novell (http://www.novell.com)
-//
-
-//
-// Copyright (C) 2004 Novell, Inc (http://www.novell.com)
+// Copyright (C) 2004-2005 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.
 //
 
+using System.Security.Permissions;
+using System.Runtime.InteropServices;
+
 namespace System.Reflection.Emit
 {
-       public sealed class MethodRental {
+#if NET_2_0
+       [ComVisible (true)]
+       [ComDefaultInterface (typeof (_MethodRental))]
+#endif
+       [ClassInterface (ClassInterfaceType.None)]
+       public sealed class MethodRental : _MethodRental {
 
                public const int JitImmediate = 1;
                public const int JitOnDemand = 0;
@@ -41,6 +45,7 @@ namespace System.Reflection.Emit
                }
 
                [MonoTODO]
+               [SecurityPermission (SecurityAction.Demand, UnmanagedCode = true)]
                public static void SwapMethodBody (Type cls, int methodtoken, IntPtr rgIL, int methodSize, int flags)
                {
                        if (methodSize <= 0 || methodSize >= 0x3f0000) {
@@ -54,6 +59,27 @@ namespace System.Reflection.Emit
 
                        throw new NotImplementedException ();
                }
+
+               void _MethodRental.GetIDsOfNames ([In] ref Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId)
+               {
+                       throw new NotImplementedException ();
+               }
+
+               void _MethodRental.GetTypeInfo (uint iTInfo, uint lcid, IntPtr ppTInfo)
+               {
+                       throw new NotImplementedException ();
+               }
+
+               void _MethodRental.GetTypeInfoCount (out uint pcTInfo)
+               {
+                       throw new NotImplementedException ();
+               }
+
+               void _MethodRental.Invoke (uint dispIdMember, [In] ref Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr)
+               {
+                       throw new NotImplementedException ();
+               }
+
        }
 }