Merge pull request #1109 from adbre/iss358
[mono.git] / mcs / class / corlib / System.Runtime.InteropServices / TypeLibConverter.cs
index 7fc3c9e5b181ea9f8914675ae4e02c0a64c80106..9cd6736cf8dbc6071dfd9ec28b2974812cdfb268 100644 (file)
 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 //
 
+#if !FULL_AOT_RUNTIME
 using System;
 using System.Reflection;
 using System.Reflection.Emit;
 
 namespace System.Runtime.InteropServices
 {
+       [ComVisible(true)]
        [Guid ("f1c3bf79-c3e4-11d3-88e7-00902754c43a")]
        [ClassInterface (ClassInterfaceType.None)]
        public sealed class TypeLibConverter : ITypeLibConverter
@@ -43,19 +45,20 @@ namespace System.Runtime.InteropServices
                }
 
                [MonoTODO ("implement")]
+               [return: MarshalAs (UnmanagedType.Interface)]
                public object ConvertAssemblyToTypeLib (Assembly assembly, string strTypeLibName, TypeLibExporterFlags flags, ITypeLibExporterNotifySink notifySink)
                {
                        throw new NotImplementedException ();
                }
 
                [MonoTODO ("implement")]
-               public AssemblyBuilder ConvertTypeLibToAssembly (object typeLib, string asmFileName, int flags, ITypeLibImporterNotifySink notifySink, byte[] publicKey, StrongNameKeyPair keyPair, bool unsafeInterfaces)
+               public AssemblyBuilder ConvertTypeLibToAssembly ([MarshalAs(UnmanagedType.Interface)] object typeLib, string asmFileName, int flags, ITypeLibImporterNotifySink notifySink, byte[] publicKey, StrongNameKeyPair keyPair, bool unsafeInterfaces)
                {
                        throw new NotImplementedException ();
                }
 
                [MonoTODO ("implement")]
-               public AssemblyBuilder ConvertTypeLibToAssembly (object typeLib, string asmFileName, TypeLibImporterFlags flags, ITypeLibImporterNotifySink notifySink, byte[] publicKey, StrongNameKeyPair keyPair, string asmNamespace, Version asmVersion)
+               public AssemblyBuilder ConvertTypeLibToAssembly ([MarshalAs(UnmanagedType.Interface)] object typeLib, string asmFileName, TypeLibImporterFlags flags, ITypeLibImporterNotifySink notifySink, byte[] publicKey, StrongNameKeyPair keyPair, string asmNamespace, Version asmVersion)
                {
                        throw new NotImplementedException ();
                }
@@ -67,3 +70,4 @@ namespace System.Runtime.InteropServices
                }       
        }
 }
+#endif