// ---------------------------------------------------------------------------- // // This is autogenerated code by CppSharp. // Do not edit this file or all your changes will be lost after re-generation. // // ---------------------------------------------------------------------------- using System; using System.Runtime.InteropServices; using System.Security; using System.Runtime.CompilerServices; [assembly:InternalsVisibleTo("CppSharp.Parser.CSharp")] [assembly:InternalsVisibleTo("CppSharp.CppParser")] namespace Std { namespace Allocator { [StructLayout(LayoutKind.Explicit, Size = 0)] public unsafe partial struct __Internal { [SuppressUnmanagedCodeSecurity] [DllImport("Std-symbols", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl, EntryPoint="_ZNSaIcED2Ev")] internal static extern void dtorc__N_std_S_allocator__C(global::System.IntPtr __instance); } } public unsafe partial class Allocator<_Tp> : IDisposable { 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 internal void*[] __OriginalVTables; protected bool __ownsNativeInstance; internal static global::Std.Allocator<_Tp> __CreateInstance(global::System.IntPtr native, bool skipVTables = false) { return new global::Std.Allocator<_Tp>(native.ToPointer(), skipVTables); } internal static global::Std.Allocator<_Tp> __CreateInstance(global::Std.Allocator.__Internal native, bool skipVTables = false) { return new global::Std.Allocator<_Tp>(native, skipVTables); } private static void* __CopyValue(global::Std.Allocator.__Internal native) { var ret = Marshal.AllocHGlobal(sizeof(global::Std.Allocator.__Internal)); *(global::Std.Allocator.__Internal*) ret = native; return ret.ToPointer(); } private Allocator(global::Std.Allocator.__Internal native, bool skipVTables = false) : this(__CopyValue(native), skipVTables) { __ownsNativeInstance = true; NativeToManagedMap[__Instance] = this; } protected Allocator(void* native, bool skipVTables = false) { if (native == null) return; __Instance = new global::System.IntPtr(native); } public void Dispose() { Dispose(disposing: true); } public virtual void Dispose(bool disposing) { if (__Instance == IntPtr.Zero) return; global::Std.Allocator<_Tp> __dummy; NativeToManagedMap.TryRemove(__Instance, out __dummy); if (disposing) { var ___Tp = typeof(_Tp); if (___Tp.IsAssignableFrom(typeof(sbyte))) { throw new MissingMethodException("Method ~allocator ignored in specialization global::Std.Allocator."); return; } throw new ArgumentOutOfRangeException("_Tp", string.Join(", ", new[] { typeof(_Tp).FullName }), "global::Std.Allocator<_Tp> maps a C++ template class and therefore it only supports a limited set of types and their subclasses: ."); } if (__ownsNativeInstance) Marshal.FreeHGlobal(__Instance); __Instance = IntPtr.Zero; } } } namespace Std { namespace Vector { [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector_____N_CppSharp_N_CppParser_N_AST_S_PreprocessedEntity___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector_____N_CppSharp_N_CppParser_N_AST_S_Declaration___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector_____N_CppSharp_N_CppParser_N_AST_S_BlockContentComment___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector_____N_CppSharp_N_CppParser_N_AST_S_Namespace___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector_____N_CppSharp_N_CppParser_N_AST_S_Enumeration___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector_____N_CppSharp_N_CppParser_N_AST_S_Function___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector_____N_CppSharp_N_CppParser_N_AST_S_Class___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector_____N_CppSharp_N_CppParser_N_AST_S_Template___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector_____N_CppSharp_N_CppParser_N_AST_S_TypedefDecl___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector_____N_CppSharp_N_CppParser_N_AST_S_TypeAlias___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector_____N_CppSharp_N_CppParser_N_AST_S_Variable___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector_____N_CppSharp_N_CppParser_N_AST_S_Friend___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector_____N_CppSharp_N_CppParser_N_AST_S_BaseClassSpecifier___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector_____N_CppSharp_N_CppParser_N_AST_S_Field___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector_____N_CppSharp_N_CppParser_N_AST_S_Method___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector_____N_CppSharp_N_CppParser_N_AST_S_Parameter___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector_____N_CppSharp_N_CppParser_N_AST_S_FunctionTemplateSpecialization___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector____N_CppSharp_N_CppParser_N_AST_S_TemplateArgument___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector_____N_CppSharp_N_CppParser_N_AST_S_AccessSpecifierDecl___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector____N_CppSharp_N_CppParser_N_AST_S_VFTableInfo___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector____N_CppSharp_N_CppParser_N_AST_S_VTableComponent___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector____N_CppSharp_N_CppParser_N_AST_S_LayoutField___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector____N_CppSharp_N_CppParser_N_AST_S_LayoutBase___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector_____N_CppSharp_N_CppParser_N_AST_S_Enumeration_S_Item___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector____N_std_N___cxx11_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector_____N_CppSharp_N_CppParser_N_AST_S_ClassTemplateSpecialization___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector_____N_CppSharp_N_CppParser_N_AST_S_ExpressionObsolete___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector_____N_CppSharp_N_CppParser_N_AST_S_VarTemplateSpecialization___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector_____N_CppSharp_N_CppParser_N_AST_S_MacroDefinition___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector_____N_CppSharp_N_CppParser_N_AST_S_TranslationUnit___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector_____N_CppSharp_N_CppParser_N_AST_S_Stmt___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector_____N_CppSharp_N_CppParser_N_AST_S_Expr___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector_____N_CppSharp_N_CppParser_N_AST_S_InlineContentComment___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector____N_CppSharp_N_CppParser_N_AST_S_BlockCommandComment_S_Argument___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector__i___N_std_S_allocator__i { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector_____N_CppSharp_N_CppParser_N_AST_S_VerbatimBlockLineComment___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector____N_CppSharp_N_CppParser_N_AST_S_InlineCommandComment_S_Argument___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector____N_CppSharp_N_CppParser_N_AST_S_HTMLStartTagComment_S_Attribute___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S_vector____N_CppSharp_N_CppParser_S_ParserDiagnostic___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } } namespace VectorBase { [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base_____N_CppSharp_N_CppParser_N_AST_S_PreprocessedEntity___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base_____N_CppSharp_N_CppParser_N_AST_S_Declaration___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base_____N_CppSharp_N_CppParser_N_AST_S_BlockContentComment___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base_____N_CppSharp_N_CppParser_N_AST_S_Template___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base_____N_CppSharp_N_CppParser_N_AST_S_TypedefDecl___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base_____N_CppSharp_N_CppParser_N_AST_S_TypeAlias___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base_____N_CppSharp_N_CppParser_N_AST_S_Variable___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base_____N_CppSharp_N_CppParser_N_AST_S_Friend___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base_____N_CppSharp_N_CppParser_N_AST_S_BaseClassSpecifier___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base_____N_CppSharp_N_CppParser_N_AST_S_Field___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base_____N_CppSharp_N_CppParser_N_AST_S_Parameter___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base_____N_CppSharp_N_CppParser_N_AST_S_FunctionTemplateSpecialization___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base____N_CppSharp_N_CppParser_N_AST_S_TemplateArgument___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base_____N_CppSharp_N_CppParser_N_AST_S_Method___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base_____N_CppSharp_N_CppParser_N_AST_S_AccessSpecifierDecl___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base____N_CppSharp_N_CppParser_N_AST_S_VTableComponent___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base____N_CppSharp_N_CppParser_N_AST_S_VFTableInfo___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base____N_CppSharp_N_CppParser_N_AST_S_LayoutField___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base____N_CppSharp_N_CppParser_N_AST_S_LayoutBase___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base_____N_CppSharp_N_CppParser_N_AST_S_Class___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base_____N_CppSharp_N_CppParser_N_AST_S_Function___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base_____N_CppSharp_N_CppParser_N_AST_S_Enumeration_S_Item___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base_____N_CppSharp_N_CppParser_N_AST_S_Enumeration___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base_____N_CppSharp_N_CppParser_N_AST_S_Namespace___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base____N_std_N___cxx11_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base_____N_CppSharp_N_CppParser_N_AST_S_ClassTemplateSpecialization___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base_____N_CppSharp_N_CppParser_N_AST_S_ExpressionObsolete___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base_____N_CppSharp_N_CppParser_N_AST_S_VarTemplateSpecialization___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base_____N_CppSharp_N_CppParser_N_AST_S_MacroDefinition___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base_____N_CppSharp_N_CppParser_N_AST_S_TranslationUnit___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base_____N_CppSharp_N_CppParser_N_AST_S_Stmt___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base_____N_CppSharp_N_CppParser_N_AST_S_Expr___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base_____N_CppSharp_N_CppParser_N_AST_S_InlineContentComment___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base____N_CppSharp_N_CppParser_N_AST_S_BlockCommandComment_S_Argument___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base__i___N_std_S_allocator__i { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base_____N_CppSharp_N_CppParser_N_AST_S_VerbatimBlockLineComment___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base____N_CppSharp_N_CppParser_N_AST_S_InlineCommandComment_S_Argument___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base____N_CppSharp_N_CppParser_N_AST_S_HTMLStartTagComment_S_Attribute___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internalc__N_std_S__Vector_base____N_CppSharp_N_CppParser_S_ParserDiagnostic___N_std_S_allocator__S0_ { [FieldOffset(0)] internal global::Std.VectorBase.VectorImpl.__Internal _M_impl; } namespace VectorImpl { [StructLayout(LayoutKind.Explicit, Size = 24)] public unsafe partial struct __Internal { [FieldOffset(0)] internal global::System.IntPtr _M_start; [FieldOffset(8)] internal global::System.IntPtr _M_finish; [FieldOffset(16)] internal global::System.IntPtr _M_end_of_storage; } } } } namespace Std { namespace Less { [StructLayout(LayoutKind.Explicit, Size = 0)] public unsafe partial struct __Internal { } } } namespace Std { public enum RbTreeColor : uint { } namespace RbTree { namespace RbTreeImpl { [StructLayout(LayoutKind.Explicit, Size = 48)] public unsafe partial struct __Internal { [FieldOffset(0)] internal global::Std.Less.__Internal _M_key_compare; [FieldOffset(8)] internal global::Std.RbTreeNodeBase.__Internal _M_header; [FieldOffset(40)] internal ulong _M_node_count; } } [StructLayout(LayoutKind.Explicit, Size = 48)] public unsafe partial struct __Internalc__N_std_S__Rb_tree____N_std_N___cxx11_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C___N_std_S_pair__1S0_____N_CppSharp_N_CppParser_N_AST_S_Declaration___N_std_S__Select1st__S3____N_std_S_less__S0____N_std_S_allocator__S3_ { [FieldOffset(0)] internal global::Std.RbTree.RbTreeImpl.__Internal _M_impl; } } public unsafe partial class RbTreeNodeBase { [StructLayout(LayoutKind.Explicit, Size = 32)] public partial struct __Internal { [FieldOffset(0)] internal global::Std.RbTreeColor _M_color; [FieldOffset(8)] internal global::System.IntPtr _M_parent; [FieldOffset(16)] internal global::System.IntPtr _M_left; [FieldOffset(24)] internal global::System.IntPtr _M_right; } } } namespace GnuCxx { } namespace Std { namespace Map { [StructLayout(LayoutKind.Explicit, Size = 48)] public unsafe partial struct __Internalc__N_std_S_map____N_std_N___cxx11_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C____N_CppSharp_N_CppParser_N_AST_S_Declaration___N_std_S_less__S0____N_std_S_allocator____N_std_S_pair__1S0__S3_ { [FieldOffset(0)] internal global::Std.RbTree.__Internalc__N_std_S__Rb_tree____N_std_N___cxx11_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C___N_std_S_pair__1S0_____N_CppSharp_N_CppParser_N_AST_S_Declaration___N_std_S__Select1st__S3____N_std_S_less__S0____N_std_S_allocator__S3_ _M_t; } } } namespace Std { } namespace Std { namespace CharTraits { [StructLayout(LayoutKind.Explicit, Size = 0)] public unsafe partial struct __Internal { } } public unsafe partial class CharTraits<_CharT> : IDisposable { 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 internal void*[] __OriginalVTables; protected bool __ownsNativeInstance; internal static global::Std.CharTraits<_CharT> __CreateInstance(global::System.IntPtr native, bool skipVTables = false) { return new global::Std.CharTraits<_CharT>(native.ToPointer(), skipVTables); } internal static global::Std.CharTraits<_CharT> __CreateInstance(global::Std.CharTraits.__Internal native, bool skipVTables = false) { return new global::Std.CharTraits<_CharT>(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 void Dispose() { Dispose(disposing: true); } public virtual void Dispose(bool disposing) { if (__Instance == IntPtr.Zero) return; global::Std.CharTraits<_CharT> __dummy; NativeToManagedMap.TryRemove(__Instance, out __dummy); if (__ownsNativeInstance) Marshal.FreeHGlobal(__Instance); __Instance = IntPtr.Zero; } } } namespace Std { namespace BasicString { [StructLayout(LayoutKind.Explicit, Size = 32)] public unsafe partial struct __Internalc__N_std_N___cxx11_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C { [FieldOffset(0)] internal global::Std.BasicString.AllocHider.__Internal _M_dataplus; [FieldOffset(8)] internal ulong _M_string_length; [FieldOffset(16)] internal global::Std.BasicString._3.__Internalc__N_std_N___cxx11_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C _0; [SuppressUnmanagedCodeSecurity] [DllImport("Std-symbols", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl, EntryPoint="_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2Ev")] internal static extern void ctorc__N_std_N___cxx11_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C(global::System.IntPtr __instance); [SuppressUnmanagedCodeSecurity] [DllImport("Std-symbols", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl, EntryPoint="_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev")] internal static extern void dtorc__N_std_N___cxx11_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C(global::System.IntPtr __instance); [SuppressUnmanagedCodeSecurity] [DllImport("Std-symbols", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl, EntryPoint="_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv")] internal static extern global::System.IntPtr CStrc__N_std_N___cxx11_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C(global::System.IntPtr __instance); } namespace AllocHider { [StructLayout(LayoutKind.Explicit, Size = 8)] public unsafe partial struct __Internal { [FieldOffset(0)] internal global::System.IntPtr _M_p; } } namespace _3 { [StructLayout(LayoutKind.Explicit, Size = 16)] public unsafe partial struct __Internalc__N_std_N___cxx11_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C { [FieldOffset(0)] internal fixed sbyte _M_local_buf[16]; [FieldOffset(0)] internal ulong _M_allocated_capacity; } } } public unsafe partial class BasicString<_CharT, _Traits, _Alloc> : IDisposable { 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 internal void*[] __OriginalVTables; protected bool __ownsNativeInstance; internal static global::Std.BasicString<_CharT, _Traits, _Alloc> __CreateInstance(global::System.IntPtr native, bool skipVTables = false) { return new global::Std.BasicString<_CharT, _Traits, _Alloc>(native.ToPointer(), skipVTables); } internal static global::Std.BasicString<_CharT, _Traits, _Alloc> __CreateInstance(global::Std.BasicString.__Internalc__N_std_N___cxx11_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C native, bool skipVTables = false) { return new global::Std.BasicString<_CharT, _Traits, _Alloc>(native, skipVTables); } private static void* __CopyValue(global::Std.BasicString.__Internalc__N_std_N___cxx11_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C native) { var ret = Marshal.AllocHGlobal(sizeof(global::Std.BasicString.__Internalc__N_std_N___cxx11_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C)); *(global::Std.BasicString.__Internalc__N_std_N___cxx11_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C*) ret = native; return ret.ToPointer(); } private BasicString(global::Std.BasicString.__Internalc__N_std_N___cxx11_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C native, bool skipVTables = false) : this(__CopyValue(native), skipVTables) { __ownsNativeInstance = true; NativeToManagedMap[__Instance] = this; } protected BasicString(void* native, bool skipVTables = false) { if (native == null) return; __Instance = new global::System.IntPtr(native); } public BasicString() { var ___CharT = typeof(_CharT); var ___Traits = typeof(_Traits); var ___Alloc = typeof(_Alloc); if (___CharT.IsAssignableFrom(typeof(sbyte)) && ___Traits.IsAssignableFrom(typeof(global::Std.CharTraits)) && ___Alloc.IsAssignableFrom(typeof(global::Std.Allocator))) { __Instance = Marshal.AllocHGlobal(sizeof(global::Std.BasicString.__Internalc__N_std_N___cxx11_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C)); __ownsNativeInstance = true; NativeToManagedMap[__Instance] = this; global::Std.BasicString.__Internalc__N_std_N___cxx11_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C.ctorc__N_std_N___cxx11_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C((__Instance + __PointerAdjustment)); return; } throw new ArgumentOutOfRangeException("_CharT, _Traits, _Alloc", string.Join(", ", new[] { typeof(_CharT).FullName, typeof(_Traits).FullName, typeof(_Alloc).FullName }), "global::Std.BasicString<_CharT, _Traits, _Alloc> maps a C++ template class and therefore it only supports a limited set of types and their subclasses: , global::Std.Allocator>."); } public void Dispose() { Dispose(disposing: true); } public virtual void Dispose(bool disposing) { if (__Instance == IntPtr.Zero) return; global::Std.BasicString<_CharT, _Traits, _Alloc> __dummy; NativeToManagedMap.TryRemove(__Instance, out __dummy); if (disposing) { var ___CharT = typeof(_CharT); var ___Traits = typeof(_Traits); var ___Alloc = typeof(_Alloc); if (___CharT.IsAssignableFrom(typeof(sbyte)) && ___Traits.IsAssignableFrom(typeof(global::Std.CharTraits)) && ___Alloc.IsAssignableFrom(typeof(global::Std.Allocator))) { global::Std.BasicString.__Internalc__N_std_N___cxx11_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C.dtorc__N_std_N___cxx11_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C((__Instance + __PointerAdjustment)); return; } throw new ArgumentOutOfRangeException("_CharT, _Traits, _Alloc", string.Join(", ", new[] { typeof(_CharT).FullName, typeof(_Traits).FullName, typeof(_Alloc).FullName }), "global::Std.BasicString<_CharT, _Traits, _Alloc> maps a C++ template class and therefore it only supports a limited set of types and their subclasses: , global::Std.Allocator>."); } if (__ownsNativeInstance) Marshal.FreeHGlobal(__Instance); __Instance = IntPtr.Zero; } public global::Std.BasicString<_CharT, _Traits, _Alloc> Assign(global::Std.BasicString<_CharT, _Traits, _Alloc> __str) { var ___CharT = typeof(_CharT); var ___Traits = typeof(_Traits); var ___Alloc = typeof(_Alloc); if (___CharT.IsAssignableFrom(typeof(sbyte)) && ___Traits.IsAssignableFrom(typeof(global::Std.CharTraits)) && ___Alloc.IsAssignableFrom(typeof(global::Std.Allocator))) { throw new MissingMethodException("Method Assign ignored in specialization global::Std.BasicString, global::Std.Allocator>."); } throw new ArgumentOutOfRangeException("_CharT, _Traits, _Alloc", string.Join(", ", new[] { typeof(_CharT).FullName, typeof(_Traits).FullName, typeof(_Alloc).FullName }), "global::Std.BasicString<_CharT, _Traits, _Alloc> maps a C++ template class and therefore it only supports a limited set of types and their subclasses: , global::Std.Allocator>."); } } public unsafe static partial class BasicStringExtensions { [StructLayout(LayoutKind.Explicit, Size = 0)] public partial struct __Internal { [SuppressUnmanagedCodeSecurity] [DllImport("Std-symbols", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl, EntryPoint="_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6assignEPKc")] internal static extern global::System.IntPtr Assign(global::System.IntPtr __instance, [MarshalAs(UnmanagedType.LPStr)] string __s); [SuppressUnmanagedCodeSecurity] [DllImport("Std-symbols", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl, EntryPoint="_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv")] internal static extern global::System.IntPtr CStr(global::System.IntPtr __instance); } public static global::Std.BasicString, global::Std.Allocator> Assign(this global::Std.BasicString, global::Std.Allocator> @this, string __s) { var __arg0 = ReferenceEquals(@this, null) ? global::System.IntPtr.Zero : @this.__Instance; var __ret = __Internal.Assign(__arg0, __s); global::Std.BasicString, global::Std.Allocator> __result0; if (__ret == IntPtr.Zero) __result0 = null; else if (global::Std.BasicString, global::Std.Allocator>.NativeToManagedMap.ContainsKey(__ret)) __result0 = (global::Std.BasicString, global::Std.Allocator>) global::Std.BasicString, global::Std.Allocator>.NativeToManagedMap[__ret]; else __result0 = global::Std.BasicString, global::Std.Allocator>.__CreateInstance(__ret); return __result0; } public static string CStr(this global::Std.BasicString, global::Std.Allocator> @this) { var __arg0 = ReferenceEquals(@this, null) ? global::System.IntPtr.Zero : @this.__Instance; var __ret = __Internal.CStr(__arg0); return Marshal.PtrToStringAnsi(__ret); } } } namespace Std { }