-//\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