From d293a7f49fa3692a759ada0caf5e298bc09bfbd8 Mon Sep 17 00:00:00 2001 From: Dimitar Dobrev Date: Fri, 10 Mar 2017 22:12:48 +0200 Subject: [PATCH] Regenerated the parser bindings with the renaming of enum items. Signed-off-by: Dimitar Dobrev --- src/CppParser/Bindings/CLI/AST.h | 12 +-- .../CppSharp.CppParser.cs | 12 +-- .../i686-apple-darwin12.4.0/Std-templates.cpp | 1 + .../CSharp/i686-apple-darwin12.4.0/Std.cs | 93 +++++++++++++++++-- .../i686-pc-win32-msvc/CppSharp.CppParser.cs | 12 +-- .../i686-pc-win32-msvc/Std-templates.cpp | 3 +- .../Bindings/CSharp/i686-pc-win32-msvc/Std.cs | 84 ++++++++++++++++- .../CppSharp.CppParser.cs | 12 +-- .../Std-templates.cpp | 1 + .../CSharp/x86_64-apple-darwin12.4.0/Std.cs | 93 +++++++++++++++++-- .../CppSharp.CppParser.cs | 12 +-- .../Std-templates.cpp | 1 + .../CSharp/x86_64-linux-gnu-cxx11abi/Std.cs | 86 ++++++++++++++++- .../x86_64-linux-gnu/CppSharp.CppParser.cs | 12 +-- .../CSharp/x86_64-linux-gnu/Std-templates.cpp | 1 + .../Bindings/CSharp/x86_64-linux-gnu/Std.cs | 84 ++++++++++++++++- .../CppSharp.CppParser.cs | 12 +-- .../x86_64-pc-win32-msvc/Std-templates.cpp | 3 +- .../CSharp/x86_64-pc-win32-msvc/Std.cs | 84 ++++++++++++++++- src/Parser/ASTConverter.cs | 8 +- 20 files changed, 553 insertions(+), 73 deletions(-) diff --git a/src/CppParser/Bindings/CLI/AST.h b/src/CppParser/Bindings/CLI/AST.h index 34e95532..84256f4c 100644 --- a/src/CppParser/Bindings/CLI/AST.h +++ b/src/CppParser/Bindings/CLI/AST.h @@ -246,8 +246,8 @@ namespace CppSharp None = 0, New = 1, Delete = 2, - Array_New = 3, - Array_Delete = 4, + ArrayNew = 3, + ArrayDelete = 4, Plus = 5, Minus = 6, Star = 7, @@ -343,8 +343,8 @@ namespace CppSharp Itanium = 0, Microsoft = 1, ARM = 2, - iOS = 3, - iOS64 = 4 + IOS = 3, + IOS64 = 4 }; public enum struct VTableComponentKind @@ -404,8 +404,8 @@ namespace CppSharp public enum struct ArchType { UnknownArch = 0, - x86 = 1, - x86_64 = 2 + X86 = 1, + X8664 = 2 }; public ref class Type : ICppInstance diff --git a/src/CppParser/Bindings/CSharp/i686-apple-darwin12.4.0/CppSharp.CppParser.cs b/src/CppParser/Bindings/CSharp/i686-apple-darwin12.4.0/CppSharp.CppParser.cs index 84027dce..922a1efb 100644 --- a/src/CppParser/Bindings/CSharp/i686-apple-darwin12.4.0/CppSharp.CppParser.cs +++ b/src/CppParser/Bindings/CSharp/i686-apple-darwin12.4.0/CppSharp.CppParser.cs @@ -133,8 +133,8 @@ namespace CppSharp None = 0, New = 1, Delete = 2, - Array_New = 3, - Array_Delete = 4, + ArrayNew = 3, + ArrayDelete = 4, Plus = 5, Minus = 6, Star = 7, @@ -230,8 +230,8 @@ namespace CppSharp Itanium = 0, Microsoft = 1, ARM = 2, - iOS = 3, - iOS64 = 4 + IOS = 3, + IOS64 = 4 } public enum VTableComponentKind @@ -291,8 +291,8 @@ namespace CppSharp public enum ArchType { UnknownArch = 0, - x86 = 1, - x86_64 = 2 + X86 = 1, + X8664 = 2 } public unsafe partial class Type : IDisposable diff --git a/src/CppParser/Bindings/CSharp/i686-apple-darwin12.4.0/Std-templates.cpp b/src/CppParser/Bindings/CSharp/i686-apple-darwin12.4.0/Std-templates.cpp index 87d16c30..dd403496 100644 --- a/src/CppParser/Bindings/CSharp/i686-apple-darwin12.4.0/Std-templates.cpp +++ b/src/CppParser/Bindings/CSharp/i686-apple-darwin12.4.0/Std-templates.cpp @@ -4,4 +4,5 @@ #include template class __declspec(dllexport) std::allocator; +template class __declspec(dllexport) std::char_traits; template class __declspec(dllexport) std::basic_string, std::allocator>; \ No newline at end of file diff --git a/src/CppParser/Bindings/CSharp/i686-apple-darwin12.4.0/Std.cs b/src/CppParser/Bindings/CSharp/i686-apple-darwin12.4.0/Std.cs index db00f4bf..36f353bc 100644 --- a/src/CppParser/Bindings/CSharp/i686-apple-darwin12.4.0/Std.cs +++ b/src/CppParser/Bindings/CSharp/i686-apple-darwin12.4.0/Std.cs @@ -249,9 +249,9 @@ namespace Std public enum Lx : uint { - relaxed = 0, - preferred = 1, - strict = 2 + Relaxed = 0, + Preferred = 1, + Strict = 2 } } } @@ -1260,6 +1260,83 @@ namespace Std { namespace __1 { + public unsafe partial class CharTraits : IDisposable + { + [StructLayout(LayoutKind.Explicit, Size = 0)] + public unsafe partial struct __Internal + { + [SuppressUnmanagedCodeSecurity] + [DllImport("Std-templates", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl, + EntryPoint="_ZNSt3__111char_traitsIcE3eofEv")] + internal static extern int Eofc__N_std_N___1_S_char_traits__C_0(); + } + + public global::System.IntPtr __Instance { get; protected set; } + + protected int __PointerAdjustment; + internal static readonly global::System.Collections.Concurrent.ConcurrentDictionary NativeToManagedMap = new global::System.Collections.Concurrent.ConcurrentDictionary(); + protected void*[] __OriginalVTables; + + protected bool __ownsNativeInstance; + + internal static global::Std.__1.CharTraits __CreateInstance(global::System.IntPtr native, bool skipVTables = false) + { + return new CharTraits(native.ToPointer(), skipVTables); + } + + internal static global::Std.__1.CharTraits __CreateInstance(global::Std.__1.CharTraits.__Internal native, bool skipVTables = false) + { + return new CharTraits(native, skipVTables); + } + + private static void* __CopyValue(global::Std.__1.CharTraits.__Internal native) + { + var ret = Marshal.AllocHGlobal(sizeof(global::Std.__1.CharTraits.__Internal)); + *(global::Std.__1.CharTraits.__Internal*) ret = native; + return ret.ToPointer(); + } + + private CharTraits(global::Std.__1.CharTraits.__Internal native, bool skipVTables = false) + : this(__CopyValue(native), skipVTables) + { + __ownsNativeInstance = true; + NativeToManagedMap[__Instance] = this; + } + + protected CharTraits(void* native, bool skipVTables = false) + { + if (native == null) + return; + __Instance = new global::System.IntPtr(native); + } + + public CharTraits() + { + __Instance = Marshal.AllocHGlobal(sizeof(global::Std.__1.CharTraits.__Internal)); + __ownsNativeInstance = true; + NativeToManagedMap[__Instance] = this; + } + + public void Dispose() + { + Dispose(disposing: true); + } + + public virtual void Dispose(bool disposing) + { + global::Std.__1.CharTraits __dummy; + NativeToManagedMap.TryRemove(__Instance, out __dummy); + if (__ownsNativeInstance) + Marshal.FreeHGlobal(__Instance); + } + + public static int Eof() + { + var __ret = global::Std.__1.CharTraits.__Internal.Eofc__N_std_N___1_S_char_traits__C_0(); + return __ret; + } + } + public unsafe partial class BasicString : IDisposable { [StructLayout(LayoutKind.Explicit, Size = 12)] @@ -1281,28 +1358,28 @@ namespace Std internal enum ShortMask : uint { - __short_mask = 0x1 + ShortMask = 0x1 } internal enum LongMask : uint { - __long_mask = 0x1 + LongMask = 0x1 } internal enum MinCap : uint { - __min_cap = 11 + MinCap = 11 } internal enum NWords : uint { - __n_words = 3 + NWords = 3 } [Flags] internal enum Alignment : uint { - __alignment = 16 + Alignment = 16 } public unsafe partial class Rep diff --git a/src/CppParser/Bindings/CSharp/i686-pc-win32-msvc/CppSharp.CppParser.cs b/src/CppParser/Bindings/CSharp/i686-pc-win32-msvc/CppSharp.CppParser.cs index ac72093b..9357b21a 100644 --- a/src/CppParser/Bindings/CSharp/i686-pc-win32-msvc/CppSharp.CppParser.cs +++ b/src/CppParser/Bindings/CSharp/i686-pc-win32-msvc/CppSharp.CppParser.cs @@ -133,8 +133,8 @@ namespace CppSharp None = 0, New = 1, Delete = 2, - Array_New = 3, - Array_Delete = 4, + ArrayNew = 3, + ArrayDelete = 4, Plus = 5, Minus = 6, Star = 7, @@ -230,8 +230,8 @@ namespace CppSharp Itanium = 0, Microsoft = 1, ARM = 2, - iOS = 3, - iOS64 = 4 + IOS = 3, + IOS64 = 4 } public enum VTableComponentKind @@ -291,8 +291,8 @@ namespace CppSharp public enum ArchType { UnknownArch = 0, - x86 = 1, - x86_64 = 2 + X86 = 1, + X8664 = 2 } public unsafe partial class Type : IDisposable diff --git a/src/CppParser/Bindings/CSharp/i686-pc-win32-msvc/Std-templates.cpp b/src/CppParser/Bindings/CSharp/i686-pc-win32-msvc/Std-templates.cpp index 87d16c30..8d6839c0 100644 --- a/src/CppParser/Bindings/CSharp/i686-pc-win32-msvc/Std-templates.cpp +++ b/src/CppParser/Bindings/CSharp/i686-pc-win32-msvc/Std-templates.cpp @@ -4,4 +4,5 @@ #include template class __declspec(dllexport) std::allocator; -template class __declspec(dllexport) std::basic_string, std::allocator>; \ No newline at end of file +template class __declspec(dllexport) std::basic_string, std::allocator>; +template class __declspec(dllexport) std::char_traits; \ No newline at end of file diff --git a/src/CppParser/Bindings/CSharp/i686-pc-win32-msvc/Std.cs b/src/CppParser/Bindings/CSharp/i686-pc-win32-msvc/Std.cs index 33618c7c..da1e4d91 100644 --- a/src/CppParser/Bindings/CSharp/i686-pc-win32-msvc/Std.cs +++ b/src/CppParser/Bindings/CSharp/i686-pc-win32-msvc/Std.cs @@ -55,6 +55,86 @@ public unsafe partial class StdExceptionData } } +namespace Std +{ + public unsafe partial class CharTraits : IDisposable + { + [StructLayout(LayoutKind.Explicit, Size = 0)] + public unsafe partial struct __Internal + { + [SuppressUnmanagedCodeSecurity] + [DllImport("Std-templates", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl, + EntryPoint="?eof@?$char_traits@D@std@@SAHXZ")] + internal static extern int Eofc__N_std_S_char_traits__C_0(); + } + + public global::System.IntPtr __Instance { get; protected set; } + + protected int __PointerAdjustment; + internal static readonly global::System.Collections.Concurrent.ConcurrentDictionary NativeToManagedMap = new global::System.Collections.Concurrent.ConcurrentDictionary(); + protected void*[] __OriginalVTables; + + protected bool __ownsNativeInstance; + + internal static global::Std.CharTraits __CreateInstance(global::System.IntPtr native, bool skipVTables = false) + { + return new CharTraits(native.ToPointer(), skipVTables); + } + + internal static global::Std.CharTraits __CreateInstance(global::Std.CharTraits.__Internal native, bool skipVTables = false) + { + return new CharTraits(native, skipVTables); + } + + private static void* __CopyValue(global::Std.CharTraits.__Internal native) + { + var ret = Marshal.AllocHGlobal(sizeof(global::Std.CharTraits.__Internal)); + *(global::Std.CharTraits.__Internal*) ret = native; + return ret.ToPointer(); + } + + private CharTraits(global::Std.CharTraits.__Internal native, bool skipVTables = false) + : this(__CopyValue(native), skipVTables) + { + __ownsNativeInstance = true; + NativeToManagedMap[__Instance] = this; + } + + protected CharTraits(void* native, bool skipVTables = false) + { + if (native == null) + return; + __Instance = new global::System.IntPtr(native); + } + + public CharTraits() + { + __Instance = Marshal.AllocHGlobal(sizeof(global::Std.CharTraits.__Internal)); + __ownsNativeInstance = true; + NativeToManagedMap[__Instance] = this; + } + + public void Dispose() + { + Dispose(disposing: true); + } + + public virtual void Dispose(bool disposing) + { + global::Std.CharTraits __dummy; + NativeToManagedMap.TryRemove(__Instance, out __dummy); + if (__ownsNativeInstance) + Marshal.FreeHGlobal(__Instance); + } + + public static int Eof() + { + var __ret = global::Std.CharTraits.__Internal.Eofc__N_std_S_char_traits__C_0(); + return __ret; + } + } +} + namespace Std { } @@ -703,8 +783,8 @@ namespace Std [Flags] public enum CodecvtMode { - _Consume_header = 4, - _Generate_header = 2 + ConsumeHeader = 4, + GenerateHeader = 2 } } diff --git a/src/CppParser/Bindings/CSharp/x86_64-apple-darwin12.4.0/CppSharp.CppParser.cs b/src/CppParser/Bindings/CSharp/x86_64-apple-darwin12.4.0/CppSharp.CppParser.cs index 2ed3b4e9..3c3abc1b 100644 --- a/src/CppParser/Bindings/CSharp/x86_64-apple-darwin12.4.0/CppSharp.CppParser.cs +++ b/src/CppParser/Bindings/CSharp/x86_64-apple-darwin12.4.0/CppSharp.CppParser.cs @@ -133,8 +133,8 @@ namespace CppSharp None = 0, New = 1, Delete = 2, - Array_New = 3, - Array_Delete = 4, + ArrayNew = 3, + ArrayDelete = 4, Plus = 5, Minus = 6, Star = 7, @@ -230,8 +230,8 @@ namespace CppSharp Itanium = 0, Microsoft = 1, ARM = 2, - iOS = 3, - iOS64 = 4 + IOS = 3, + IOS64 = 4 } public enum VTableComponentKind @@ -291,8 +291,8 @@ namespace CppSharp public enum ArchType { UnknownArch = 0, - x86 = 1, - x86_64 = 2 + X86 = 1, + X8664 = 2 } public unsafe partial class Type : IDisposable diff --git a/src/CppParser/Bindings/CSharp/x86_64-apple-darwin12.4.0/Std-templates.cpp b/src/CppParser/Bindings/CSharp/x86_64-apple-darwin12.4.0/Std-templates.cpp index 87d16c30..dd403496 100644 --- a/src/CppParser/Bindings/CSharp/x86_64-apple-darwin12.4.0/Std-templates.cpp +++ b/src/CppParser/Bindings/CSharp/x86_64-apple-darwin12.4.0/Std-templates.cpp @@ -4,4 +4,5 @@ #include template class __declspec(dllexport) std::allocator; +template class __declspec(dllexport) std::char_traits; template class __declspec(dllexport) std::basic_string, std::allocator>; \ No newline at end of file diff --git a/src/CppParser/Bindings/CSharp/x86_64-apple-darwin12.4.0/Std.cs b/src/CppParser/Bindings/CSharp/x86_64-apple-darwin12.4.0/Std.cs index d53a7112..ca4dbfd9 100644 --- a/src/CppParser/Bindings/CSharp/x86_64-apple-darwin12.4.0/Std.cs +++ b/src/CppParser/Bindings/CSharp/x86_64-apple-darwin12.4.0/Std.cs @@ -249,9 +249,9 @@ namespace Std public enum Lx : uint { - relaxed = 0, - preferred = 1, - strict = 2 + Relaxed = 0, + Preferred = 1, + Strict = 2 } } } @@ -1260,6 +1260,83 @@ namespace Std { namespace __1 { + public unsafe partial class CharTraits : IDisposable + { + [StructLayout(LayoutKind.Explicit, Size = 0)] + public unsafe partial struct __Internal + { + [SuppressUnmanagedCodeSecurity] + [DllImport("Std-templates", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl, + EntryPoint="_ZNSt3__111char_traitsIcE3eofEv")] + internal static extern int Eofc__N_std_N___1_S_char_traits__C_0(); + } + + public global::System.IntPtr __Instance { get; protected set; } + + protected int __PointerAdjustment; + internal static readonly global::System.Collections.Concurrent.ConcurrentDictionary NativeToManagedMap = new global::System.Collections.Concurrent.ConcurrentDictionary(); + protected void*[] __OriginalVTables; + + protected bool __ownsNativeInstance; + + internal static global::Std.__1.CharTraits __CreateInstance(global::System.IntPtr native, bool skipVTables = false) + { + return new CharTraits(native.ToPointer(), skipVTables); + } + + internal static global::Std.__1.CharTraits __CreateInstance(global::Std.__1.CharTraits.__Internal native, bool skipVTables = false) + { + return new CharTraits(native, skipVTables); + } + + private static void* __CopyValue(global::Std.__1.CharTraits.__Internal native) + { + var ret = Marshal.AllocHGlobal(sizeof(global::Std.__1.CharTraits.__Internal)); + *(global::Std.__1.CharTraits.__Internal*) ret = native; + return ret.ToPointer(); + } + + private CharTraits(global::Std.__1.CharTraits.__Internal native, bool skipVTables = false) + : this(__CopyValue(native), skipVTables) + { + __ownsNativeInstance = true; + NativeToManagedMap[__Instance] = this; + } + + protected CharTraits(void* native, bool skipVTables = false) + { + if (native == null) + return; + __Instance = new global::System.IntPtr(native); + } + + public CharTraits() + { + __Instance = Marshal.AllocHGlobal(sizeof(global::Std.__1.CharTraits.__Internal)); + __ownsNativeInstance = true; + NativeToManagedMap[__Instance] = this; + } + + public void Dispose() + { + Dispose(disposing: true); + } + + public virtual void Dispose(bool disposing) + { + global::Std.__1.CharTraits __dummy; + NativeToManagedMap.TryRemove(__Instance, out __dummy); + if (__ownsNativeInstance) + Marshal.FreeHGlobal(__Instance); + } + + public static int Eof() + { + var __ret = global::Std.__1.CharTraits.__Internal.Eofc__N_std_N___1_S_char_traits__C_0(); + return __ret; + } + } + public unsafe partial class BasicString : IDisposable { [StructLayout(LayoutKind.Explicit, Size = 24)] @@ -1281,28 +1358,28 @@ namespace Std internal enum ShortMask : uint { - __short_mask = 0x1 + ShortMask = 0x1 } internal enum LongMask : uint { - __long_mask = 0x1 + LongMask = 0x1 } internal enum MinCap : uint { - __min_cap = 23 + MinCap = 23 } internal enum NWords : uint { - __n_words = 3 + NWords = 3 } [Flags] internal enum Alignment : uint { - __alignment = 16 + Alignment = 16 } public unsafe partial class Rep diff --git a/src/CppParser/Bindings/CSharp/x86_64-linux-gnu-cxx11abi/CppSharp.CppParser.cs b/src/CppParser/Bindings/CSharp/x86_64-linux-gnu-cxx11abi/CppSharp.CppParser.cs index cc05a975..80f38400 100644 --- a/src/CppParser/Bindings/CSharp/x86_64-linux-gnu-cxx11abi/CppSharp.CppParser.cs +++ b/src/CppParser/Bindings/CSharp/x86_64-linux-gnu-cxx11abi/CppSharp.CppParser.cs @@ -133,8 +133,8 @@ namespace CppSharp None = 0, New = 1, Delete = 2, - Array_New = 3, - Array_Delete = 4, + ArrayNew = 3, + ArrayDelete = 4, Plus = 5, Minus = 6, Star = 7, @@ -230,8 +230,8 @@ namespace CppSharp Itanium = 0, Microsoft = 1, ARM = 2, - iOS = 3, - iOS64 = 4 + IOS = 3, + IOS64 = 4 } public enum VTableComponentKind @@ -291,8 +291,8 @@ namespace CppSharp public enum ArchType { UnknownArch = 0, - x86 = 1, - x86_64 = 2 + X86 = 1, + X8664 = 2 } public unsafe partial class Type : IDisposable diff --git a/src/CppParser/Bindings/CSharp/x86_64-linux-gnu-cxx11abi/Std-templates.cpp b/src/CppParser/Bindings/CSharp/x86_64-linux-gnu-cxx11abi/Std-templates.cpp index 87d16c30..dd403496 100644 --- a/src/CppParser/Bindings/CSharp/x86_64-linux-gnu-cxx11abi/Std-templates.cpp +++ b/src/CppParser/Bindings/CSharp/x86_64-linux-gnu-cxx11abi/Std-templates.cpp @@ -4,4 +4,5 @@ #include template class __declspec(dllexport) std::allocator; +template class __declspec(dllexport) std::char_traits; template class __declspec(dllexport) std::basic_string, std::allocator>; \ No newline at end of file diff --git a/src/CppParser/Bindings/CSharp/x86_64-linux-gnu-cxx11abi/Std.cs b/src/CppParser/Bindings/CSharp/x86_64-linux-gnu-cxx11abi/Std.cs index 9b1c34fc..afbbde3c 100644 --- a/src/CppParser/Bindings/CSharp/x86_64-linux-gnu-cxx11abi/Std.cs +++ b/src/CppParser/Bindings/CSharp/x86_64-linux-gnu-cxx11abi/Std.cs @@ -204,8 +204,8 @@ namespace Std { public enum RbTreeColor : uint { - _S_red = 0, - _S_black = 1 + SRed = 0, + SBlack = 1 } namespace RbTree @@ -332,6 +332,86 @@ public unsafe partial class MbstateT } } +namespace Std +{ + public unsafe partial class CharTraits : IDisposable + { + [StructLayout(LayoutKind.Explicit, Size = 0)] + public unsafe partial struct __Internal + { + [SuppressUnmanagedCodeSecurity] + [DllImport("Std-templates", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl, + EntryPoint="_ZNSt11char_traitsIcE3eofEv")] + internal static extern int Eofc__N_std_S_char_traits__C_0(); + } + + public global::System.IntPtr __Instance { get; protected set; } + + protected int __PointerAdjustment; + internal static readonly global::System.Collections.Concurrent.ConcurrentDictionary NativeToManagedMap = new global::System.Collections.Concurrent.ConcurrentDictionary(); + protected void*[] __OriginalVTables; + + protected bool __ownsNativeInstance; + + internal static global::Std.CharTraits __CreateInstance(global::System.IntPtr native, bool skipVTables = false) + { + return new CharTraits(native.ToPointer(), skipVTables); + } + + internal static global::Std.CharTraits __CreateInstance(global::Std.CharTraits.__Internal native, bool skipVTables = false) + { + return new CharTraits(native, skipVTables); + } + + private static void* __CopyValue(global::Std.CharTraits.__Internal native) + { + var ret = Marshal.AllocHGlobal(sizeof(global::Std.CharTraits.__Internal)); + *(global::Std.CharTraits.__Internal*) ret = native; + return ret.ToPointer(); + } + + private CharTraits(global::Std.CharTraits.__Internal native, bool skipVTables = false) + : this(__CopyValue(native), skipVTables) + { + __ownsNativeInstance = true; + NativeToManagedMap[__Instance] = this; + } + + protected CharTraits(void* native, bool skipVTables = false) + { + if (native == null) + return; + __Instance = new global::System.IntPtr(native); + } + + public CharTraits() + { + __Instance = Marshal.AllocHGlobal(sizeof(global::Std.CharTraits.__Internal)); + __ownsNativeInstance = true; + NativeToManagedMap[__Instance] = this; + } + + public void Dispose() + { + Dispose(disposing: true); + } + + public virtual void Dispose(bool disposing) + { + global::Std.CharTraits __dummy; + NativeToManagedMap.TryRemove(__Instance, out __dummy); + if (__ownsNativeInstance) + Marshal.FreeHGlobal(__Instance); + } + + public static int Eof() + { + var __ret = global::Std.CharTraits.__Internal.Eofc__N_std_S_char_traits__C_0(); + return __ret; + } + } +} + namespace Std { } @@ -589,7 +669,7 @@ namespace Std internal enum SLocalCapacity : uint { - _S_local_capacity = 15 + SLocalCapacity = 15 } public unsafe partial class AllocHider diff --git a/src/CppParser/Bindings/CSharp/x86_64-linux-gnu/CppSharp.CppParser.cs b/src/CppParser/Bindings/CSharp/x86_64-linux-gnu/CppSharp.CppParser.cs index 1f0fccc4..a1e60778 100644 --- a/src/CppParser/Bindings/CSharp/x86_64-linux-gnu/CppSharp.CppParser.cs +++ b/src/CppParser/Bindings/CSharp/x86_64-linux-gnu/CppSharp.CppParser.cs @@ -133,8 +133,8 @@ namespace CppSharp None = 0, New = 1, Delete = 2, - Array_New = 3, - Array_Delete = 4, + ArrayNew = 3, + ArrayDelete = 4, Plus = 5, Minus = 6, Star = 7, @@ -230,8 +230,8 @@ namespace CppSharp Itanium = 0, Microsoft = 1, ARM = 2, - iOS = 3, - iOS64 = 4 + IOS = 3, + IOS64 = 4 } public enum VTableComponentKind @@ -291,8 +291,8 @@ namespace CppSharp public enum ArchType { UnknownArch = 0, - x86 = 1, - x86_64 = 2 + X86 = 1, + X8664 = 2 } public unsafe partial class Type : IDisposable diff --git a/src/CppParser/Bindings/CSharp/x86_64-linux-gnu/Std-templates.cpp b/src/CppParser/Bindings/CSharp/x86_64-linux-gnu/Std-templates.cpp index 87d16c30..dd403496 100644 --- a/src/CppParser/Bindings/CSharp/x86_64-linux-gnu/Std-templates.cpp +++ b/src/CppParser/Bindings/CSharp/x86_64-linux-gnu/Std-templates.cpp @@ -4,4 +4,5 @@ #include template class __declspec(dllexport) std::allocator; +template class __declspec(dllexport) std::char_traits; template class __declspec(dllexport) std::basic_string, std::allocator>; \ No newline at end of file diff --git a/src/CppParser/Bindings/CSharp/x86_64-linux-gnu/Std.cs b/src/CppParser/Bindings/CSharp/x86_64-linux-gnu/Std.cs index a7688e1c..a5ced3d3 100644 --- a/src/CppParser/Bindings/CSharp/x86_64-linux-gnu/Std.cs +++ b/src/CppParser/Bindings/CSharp/x86_64-linux-gnu/Std.cs @@ -204,8 +204,8 @@ namespace Std { public enum RbTreeColor : uint { - _S_red = 0, - _S_black = 1 + SRed = 0, + SBlack = 1 } namespace RbTree @@ -325,6 +325,86 @@ public unsafe partial class MbstateT } } +namespace Std +{ + public unsafe partial class CharTraits : IDisposable + { + [StructLayout(LayoutKind.Explicit, Size = 0)] + public unsafe partial struct __Internal + { + [SuppressUnmanagedCodeSecurity] + [DllImport("Std-templates", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl, + EntryPoint="_ZNSt11char_traitsIcE3eofEv")] + internal static extern int Eofc__N_std_S_char_traits__C_0(); + } + + public global::System.IntPtr __Instance { get; protected set; } + + protected int __PointerAdjustment; + internal static readonly global::System.Collections.Concurrent.ConcurrentDictionary NativeToManagedMap = new global::System.Collections.Concurrent.ConcurrentDictionary(); + protected void*[] __OriginalVTables; + + protected bool __ownsNativeInstance; + + internal static global::Std.CharTraits __CreateInstance(global::System.IntPtr native, bool skipVTables = false) + { + return new CharTraits(native.ToPointer(), skipVTables); + } + + internal static global::Std.CharTraits __CreateInstance(global::Std.CharTraits.__Internal native, bool skipVTables = false) + { + return new CharTraits(native, skipVTables); + } + + private static void* __CopyValue(global::Std.CharTraits.__Internal native) + { + var ret = Marshal.AllocHGlobal(sizeof(global::Std.CharTraits.__Internal)); + *(global::Std.CharTraits.__Internal*) ret = native; + return ret.ToPointer(); + } + + private CharTraits(global::Std.CharTraits.__Internal native, bool skipVTables = false) + : this(__CopyValue(native), skipVTables) + { + __ownsNativeInstance = true; + NativeToManagedMap[__Instance] = this; + } + + protected CharTraits(void* native, bool skipVTables = false) + { + if (native == null) + return; + __Instance = new global::System.IntPtr(native); + } + + public CharTraits() + { + __Instance = Marshal.AllocHGlobal(sizeof(global::Std.CharTraits.__Internal)); + __ownsNativeInstance = true; + NativeToManagedMap[__Instance] = this; + } + + public void Dispose() + { + Dispose(disposing: true); + } + + public virtual void Dispose(bool disposing) + { + global::Std.CharTraits __dummy; + NativeToManagedMap.TryRemove(__Instance, out __dummy); + if (__ownsNativeInstance) + Marshal.FreeHGlobal(__Instance); + } + + public static int Eof() + { + var __ret = global::Std.CharTraits.__Internal.Eofc__N_std_S_char_traits__C_0(); + return __ret; + } + } +} + public unsafe partial class Timespec { [StructLayout(LayoutKind.Explicit, Size = 16)] diff --git a/src/CppParser/Bindings/CSharp/x86_64-pc-win32-msvc/CppSharp.CppParser.cs b/src/CppParser/Bindings/CSharp/x86_64-pc-win32-msvc/CppSharp.CppParser.cs index d275e210..02532cbb 100644 --- a/src/CppParser/Bindings/CSharp/x86_64-pc-win32-msvc/CppSharp.CppParser.cs +++ b/src/CppParser/Bindings/CSharp/x86_64-pc-win32-msvc/CppSharp.CppParser.cs @@ -133,8 +133,8 @@ namespace CppSharp None = 0, New = 1, Delete = 2, - Array_New = 3, - Array_Delete = 4, + ArrayNew = 3, + ArrayDelete = 4, Plus = 5, Minus = 6, Star = 7, @@ -230,8 +230,8 @@ namespace CppSharp Itanium = 0, Microsoft = 1, ARM = 2, - iOS = 3, - iOS64 = 4 + IOS = 3, + IOS64 = 4 } public enum VTableComponentKind @@ -291,8 +291,8 @@ namespace CppSharp public enum ArchType { UnknownArch = 0, - x86 = 1, - x86_64 = 2 + X86 = 1, + X8664 = 2 } public unsafe partial class Type : IDisposable diff --git a/src/CppParser/Bindings/CSharp/x86_64-pc-win32-msvc/Std-templates.cpp b/src/CppParser/Bindings/CSharp/x86_64-pc-win32-msvc/Std-templates.cpp index 87d16c30..8d6839c0 100644 --- a/src/CppParser/Bindings/CSharp/x86_64-pc-win32-msvc/Std-templates.cpp +++ b/src/CppParser/Bindings/CSharp/x86_64-pc-win32-msvc/Std-templates.cpp @@ -4,4 +4,5 @@ #include template class __declspec(dllexport) std::allocator; -template class __declspec(dllexport) std::basic_string, std::allocator>; \ No newline at end of file +template class __declspec(dllexport) std::basic_string, std::allocator>; +template class __declspec(dllexport) std::char_traits; \ No newline at end of file diff --git a/src/CppParser/Bindings/CSharp/x86_64-pc-win32-msvc/Std.cs b/src/CppParser/Bindings/CSharp/x86_64-pc-win32-msvc/Std.cs index adb3f3c4..8cdb231d 100644 --- a/src/CppParser/Bindings/CSharp/x86_64-pc-win32-msvc/Std.cs +++ b/src/CppParser/Bindings/CSharp/x86_64-pc-win32-msvc/Std.cs @@ -55,6 +55,86 @@ public unsafe partial class StdExceptionData } } +namespace Std +{ + public unsafe partial class CharTraits : IDisposable + { + [StructLayout(LayoutKind.Explicit, Size = 0)] + public unsafe partial struct __Internal + { + [SuppressUnmanagedCodeSecurity] + [DllImport("Std-templates", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl, + EntryPoint="?eof@?$char_traits@D@std@@SAHXZ")] + internal static extern int Eofc__N_std_S_char_traits__C_0(); + } + + public global::System.IntPtr __Instance { get; protected set; } + + protected int __PointerAdjustment; + internal static readonly global::System.Collections.Concurrent.ConcurrentDictionary NativeToManagedMap = new global::System.Collections.Concurrent.ConcurrentDictionary(); + protected void*[] __OriginalVTables; + + protected bool __ownsNativeInstance; + + internal static global::Std.CharTraits __CreateInstance(global::System.IntPtr native, bool skipVTables = false) + { + return new CharTraits(native.ToPointer(), skipVTables); + } + + internal static global::Std.CharTraits __CreateInstance(global::Std.CharTraits.__Internal native, bool skipVTables = false) + { + return new CharTraits(native, skipVTables); + } + + private static void* __CopyValue(global::Std.CharTraits.__Internal native) + { + var ret = Marshal.AllocHGlobal(sizeof(global::Std.CharTraits.__Internal)); + *(global::Std.CharTraits.__Internal*) ret = native; + return ret.ToPointer(); + } + + private CharTraits(global::Std.CharTraits.__Internal native, bool skipVTables = false) + : this(__CopyValue(native), skipVTables) + { + __ownsNativeInstance = true; + NativeToManagedMap[__Instance] = this; + } + + protected CharTraits(void* native, bool skipVTables = false) + { + if (native == null) + return; + __Instance = new global::System.IntPtr(native); + } + + public CharTraits() + { + __Instance = Marshal.AllocHGlobal(sizeof(global::Std.CharTraits.__Internal)); + __ownsNativeInstance = true; + NativeToManagedMap[__Instance] = this; + } + + public void Dispose() + { + Dispose(disposing: true); + } + + public virtual void Dispose(bool disposing) + { + global::Std.CharTraits __dummy; + NativeToManagedMap.TryRemove(__Instance, out __dummy); + if (__ownsNativeInstance) + Marshal.FreeHGlobal(__Instance); + } + + public static int Eof() + { + var __ret = global::Std.CharTraits.__Internal.Eofc__N_std_S_char_traits__C_0(); + return __ret; + } + } +} + namespace Std { } @@ -713,8 +793,8 @@ namespace Std [Flags] public enum CodecvtMode { - _Consume_header = 4, - _Generate_header = 2 + ConsumeHeader = 4, + GenerateHeader = 2 } } diff --git a/src/Parser/ASTConverter.cs b/src/Parser/ASTConverter.cs index 7a2e4155..66b8fec4 100644 --- a/src/Parser/ASTConverter.cs +++ b/src/Parser/ASTConverter.cs @@ -1255,9 +1255,9 @@ namespace CppSharp return AST.CXXOperatorKind.New; case CXXOperatorKind.Delete: return AST.CXXOperatorKind.Delete; - case CXXOperatorKind.Array_New: + case CXXOperatorKind.ArrayNew: return AST.CXXOperatorKind.Array_New; - case CXXOperatorKind.Array_Delete: + case CXXOperatorKind.ArrayDelete: return AST.CXXOperatorKind.Array_Delete; case CXXOperatorKind.Plus: return AST.CXXOperatorKind.Plus; @@ -1575,9 +1575,9 @@ namespace CppSharp return AST.CppAbi.Microsoft; case CppAbi.ARM: return AST.CppAbi.ARM; - case CppAbi.iOS: + case CppAbi.IOS: return AST.CppAbi.iOS; - case CppAbi.iOS64: + case CppAbi.IOS64: return AST.CppAbi.iOS64; default: throw new ArgumentOutOfRangeException("abi");