Merge pull request #472 from MelanieT/spmanager_fix
[mono.git] / mcs / class / corlib / System.Runtime.InteropServices / ITypeLibConverter.cs
index d5da46298b8213725bf2f2e67f74f5d69f548cf6..1e335ba7c1c5ea8d18e2ebc709d364328e5bf811 100644 (file)
@@ -1,11 +1,11 @@
-//\r
-// System.Runtime.InteropServices.ITypeLibConverter.cs\r
-//\r
-// Author:\r
-//   Kevin Winchester (kwin@ns.sympatico.ca)\r
-//\r
-// (C) 2002 Kevin Winchester\r
-//\r
+//
+// System.Runtime.InteropServices.ITypeLibConverter.cs
+//
+// Author:
+//   Kevin Winchester (kwin@ns.sympatico.ca)
+//
+// (C) 2002 Kevin Winchester
+//
 
 //
 // Copyright (C) 2004 Novell, Inc (http://www.novell.com)
 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 //
-\r
-using System.Reflection;\r
-using System.Reflection.Emit;\r
-\r
-namespace System.Runtime.InteropServices {\r
-\r
-       [Guid("F1C3BF78-C3E4-11D3-88E7-00902754C43A")]\r
-       [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]\r
-       public interface ITypeLibConverter {\r
-               object ConvertAssemblyToTypeLib (Assembly assembly, string typeLibName, TypeLibExporterFlags flags, ITypeLibExporterNotifySink notifySink);\r
-               AssemblyBuilder ConvertTypeLibToAssembly (object typeLib, string asmFileName, int flags, ITypeLibImporterNotifySink notifySink, byte[] publicKey, StrongNameKeyPair keyPair, bool unsafeInterfaces);
-               AssemblyBuilder ConvertTypeLibToAssembly (object typeLib, string asmFileName, TypeLibImporterFlags flags, ITypeLibImporterNotifySink notifySink, byte[] publicKey, StrongNameKeyPair keyPair, string asmNamespace, Version asmVersion);\r
-               bool GetPrimaryInteropAssembly (Guid g, int major, int minor, int lcid, out string asmName, out string asmCodeBase);\r
-       }\r
-}\r
+
+#if !FULL_AOT_RUNTIME
+using System.Reflection;
+using System.Reflection.Emit;
+
+namespace System.Runtime.InteropServices {
+
+       [ComVisible (true)]
+       [Guid("F1C3BF78-C3E4-11D3-88E7-00902754C43A")]
+       [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
+       public interface ITypeLibConverter {
+               [return: MarshalAs(UnmanagedType.Interface)]
+               object ConvertAssemblyToTypeLib (Assembly assembly, string typeLibName, TypeLibExporterFlags flags, ITypeLibExporterNotifySink notifySink);
+               AssemblyBuilder ConvertTypeLibToAssembly ([MarshalAs(UnmanagedType.Interface)] object typeLib, string asmFileName, int flags, ITypeLibImporterNotifySink notifySink, byte[] publicKey, StrongNameKeyPair keyPair, bool unsafeInterfaces);
+               AssemblyBuilder ConvertTypeLibToAssembly ([MarshalAs(UnmanagedType.Interface)] object typeLib, string asmFileName, TypeLibImporterFlags flags, ITypeLibImporterNotifySink notifySink, byte[] publicKey, StrongNameKeyPair keyPair, string asmNamespace, Version asmVersion);
+               bool GetPrimaryInteropAssembly (Guid g, int major, int minor, int lcid, out string asmName, out string asmCodeBase);
+       }
+}
+#endif