Browse Source

Refactor Clang builtins directory logic and move it to the managed side.

This now matches systems Clang includes order on macOS which fixes a bug.

Signed-off-by: Joao Matos <joao@tritao.eu>
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
pull/1277/head
Joao Matos 5 years ago committed by João Matos
parent
commit
ac7bdb2585
  1. 16
      src/CppParser/Bindings/CLI/CppParser.cpp
  2. 11
      src/CppParser/Bindings/CLI/CppParser.h
  3. 62
      src/CppParser/Bindings/CSharp/i686-apple-darwin12.4.0/CppSharp.CppParser.cs
  4. 518
      src/CppParser/Bindings/CSharp/i686-apple-darwin12.4.0/Std.cs
  5. 52
      src/CppParser/Bindings/CSharp/i686-pc-win32-msvc/CppSharp.CppParser.cs
  6. 62
      src/CppParser/Bindings/CSharp/x86_64-apple-darwin12.4.0/CppSharp.CppParser.cs
  7. 518
      src/CppParser/Bindings/CSharp/x86_64-apple-darwin12.4.0/Std.cs
  8. 52
      src/CppParser/Bindings/CSharp/x86_64-linux-gnu-cxx11abi/CppSharp.CppParser.cs
  9. 52
      src/CppParser/Bindings/CSharp/x86_64-linux-gnu/CppSharp.CppParser.cs
  10. 52
      src/CppParser/Bindings/CSharp/x86_64-pc-win32-msvc/CppSharp.CppParser.cs
  11. 4
      src/CppParser/CppParser.cpp
  12. 9
      src/CppParser/CppParser.h
  13. 25
      src/CppParser/Parser.cpp
  14. 19
      src/CppParser/ParserGen/ParserGen.cs
  15. 53
      src/Parser/ParserOptions.cs

16
src/CppParser/Bindings/CLI/CppParser.cpp

@ -421,16 +421,6 @@ void CppSharp::Parser::CppParserOptions::TargetTriple::set(System::String^ value @@ -421,16 +421,6 @@ void CppSharp::Parser::CppParserOptions::TargetTriple::set(System::String^ value
((::CppSharp::CppParser::CppParserOptions*)NativePtr)->targetTriple = clix::marshalString<clix::E_UTF8>(value);
}
System::String^ CppSharp::Parser::CppParserOptions::ResourceDir::get()
{
return clix::marshalString<clix::E_UTF8>(((::CppSharp::CppParser::CppParserOptions*)NativePtr)->resourceDir);
}
void CppSharp::Parser::CppParserOptions::ResourceDir::set(System::String^ value)
{
((::CppSharp::CppParser::CppParserOptions*)NativePtr)->resourceDir = clix::marshalString<clix::E_UTF8>(value);
}
bool CppSharp::Parser::CppParserOptions::NoStandardIncludes::get()
{
return ((::CppSharp::CppParser::CppParserOptions*)NativePtr)->noStandardIncludes;
@ -511,6 +501,12 @@ void CppSharp::Parser::CppParserOptions::SkipFunctionBodies::set(bool value) @@ -511,6 +501,12 @@ void CppSharp::Parser::CppParserOptions::SkipFunctionBodies::set(bool value)
((::CppSharp::CppParser::CppParserOptions*)NativePtr)->skipFunctionBodies = value;
}
System::String^ CppSharp::Parser::CppParserOptions::ClangVersion::get()
{
auto __ret = ((::CppSharp::CppParser::CppParserOptions*)NativePtr)->getClangVersion();
return clix::marshalString<clix::E_UTF8>(__ret);
}
unsigned int CppSharp::Parser::CppParserOptions::ArgumentsCount::get()
{
auto __ret = ((::CppSharp::CppParser::CppParserOptions*)NativePtr)->getArgumentsCount();

11
src/CppParser/Bindings/CLI/CppParser.h

@ -150,12 +150,6 @@ namespace CppSharp @@ -150,12 +150,6 @@ namespace CppSharp
void set(System::String^);
}
property System::String^ ResourceDir
{
System::String^ get();
void set(System::String^);
}
property bool NoStandardIncludes
{
bool get();
@ -204,6 +198,11 @@ namespace CppSharp @@ -204,6 +198,11 @@ namespace CppSharp
void set(bool);
}
property System::String^ ClangVersion
{
System::String^ get();
}
property unsigned int ArgumentsCount
{
unsigned int get();

62
src/CppParser/Bindings/CSharp/i686-apple-darwin12.4.0/CppSharp.CppParser.cs

@ -47465,32 +47465,32 @@ namespace CppSharp @@ -47465,32 +47465,32 @@ namespace CppSharp
internal global::Std.BasicString.__Internalc__N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C targetTriple;
[FieldOffset(128)]
internal global::Std.BasicString.__Internalc__N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C resourceDir;
[FieldOffset(140)]
internal byte noStandardIncludes;
[FieldOffset(141)]
[FieldOffset(129)]
internal byte noBuiltinIncludes;
[FieldOffset(142)]
[FieldOffset(130)]
internal byte microsoftMode;
[FieldOffset(143)]
[FieldOffset(131)]
internal byte verbose;
[FieldOffset(144)]
[FieldOffset(132)]
internal byte unityBuild;
[FieldOffset(145)]
[FieldOffset(133)]
internal byte skipPrivateDeclarations;
[FieldOffset(146)]
[FieldOffset(134)]
internal byte skipLayoutInfo;
[FieldOffset(147)]
[FieldOffset(135)]
internal byte skipFunctionBodies;
[FieldOffset(136)]
internal global::Std.BasicString.__Internalc__N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C clangVersion;
[SuppressUnmanagedCodeSecurity]
[DllImport("CppSharp.CppParser", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
EntryPoint="_ZN8CppSharp9CppParser16CppParserOptionsC2Ev")]
@ -47626,6 +47626,11 @@ namespace CppSharp @@ -47626,6 +47626,11 @@ namespace CppSharp
EntryPoint="_ZN8CppSharp9CppParser16CppParserOptions22clearSupportedStdTypesEv")]
internal static extern void ClearSupportedStdTypes(global::System.IntPtr __instance);
[SuppressUnmanagedCodeSecurity]
[DllImport("CppSharp.CppParser", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
EntryPoint="_ZN8CppSharp9CppParser16CppParserOptions15getClangVersionEv")]
internal static extern void GetClangVersion(global::System.IntPtr @return, global::System.IntPtr __instance);
[SuppressUnmanagedCodeSecurity]
[DllImport("CppSharp.CppParser", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
EntryPoint="_ZN8CppSharp9CppParser16CppParserOptions17getArgumentsCountEv")]
@ -47970,20 +47975,6 @@ namespace CppSharp @@ -47970,20 +47975,6 @@ namespace CppSharp
}
}
public string ResourceDir
{
get
{
var __basicStringRet0 = global::Std.BasicString<sbyte, global::Std.CharTraits<sbyte>, global::Std.Allocator<sbyte>>.__CreateInstance(new global::System.IntPtr(&((global::CppSharp.Parser.CppParserOptions.__Internal*) __Instance)->resourceDir));
return global::Std.BasicStringExtensions.Data(__basicStringRet0);
}
set
{
global::Std.BasicStringExtensions.__Internal.Assign(new global::System.IntPtr(&((global::CppSharp.Parser.CppParserOptions.__Internal*)__Instance)->resourceDir), value);
}
}
public bool NoStandardIncludes
{
get
@ -48088,6 +48079,19 @@ namespace CppSharp @@ -48088,6 +48079,19 @@ namespace CppSharp
}
}
public string ClangVersion
{
get
{
var __ret = new global::Std.BasicString.__Internalc__N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C();
__Internal.GetClangVersion(new IntPtr(&__ret), (__Instance + __PointerAdjustment));
var __basicStringRet0 = global::Std.BasicString<sbyte, global::Std.CharTraits<sbyte>, global::Std.Allocator<sbyte>>.__CreateInstance(new global::System.IntPtr(&__ret));
var __retString0 = global::Std.BasicStringExtensions.Data(__basicStringRet0);
__basicStringRet0.Dispose();
return __retString0;
}
}
public uint ArgumentsCount
{
get
@ -48694,16 +48698,6 @@ namespace Std @@ -48694,16 +48698,6 @@ namespace Std
{
namespace Pair
{
[StructLayout(LayoutKind.Explicit, Size = 16)]
public unsafe partial struct __Internalc__N_std_N___1_S_pair____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C____N_CppSharp_N_CppParser_N_AST_S_Declaration
{
[FieldOffset(0)]
internal global::Std.BasicString.__Internalc__N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C first;
[FieldOffset(12)]
internal global::System.IntPtr second;
}
[StructLayout(LayoutKind.Explicit, Size = 16)]
public unsafe partial struct __Internalc__N_std_N___1_S_pair__1__N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C____N_CppSharp_N_CppParser_N_AST_S_Declaration
{

518
src/CppParser/Bindings/CSharp/i686-apple-darwin12.4.0/Std.cs

@ -29,19 +29,302 @@ namespace Std @@ -29,19 +29,302 @@ namespace Std
{
}
namespace Std
{
}
namespace Std
{
namespace CompressedPair
{
[StructLayout(LayoutKind.Explicit, Size = 12)]
public unsafe partial struct __Internal
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C_S___rep_S2_
{
[FieldOffset(0)]
internal global::Std.BasicString.Rep.__Internalc__N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_PreprocessedEntity___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Declaration___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_BlockContentComment___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Template___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_TypedefDecl___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_TypeAlias___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::Std.BasicString.Rep.__Internalc__N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C __first_;
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Variable___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Friend___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair____N_std_N___1_S___tree_end_node_____N_std_N___1_S___tree_node_base___v___N_std_N___1_S_allocator____N_std_N___1_S___tree_node____N_std_N___1_S___value_type____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C____N_CppSharp_N_CppParser_N_AST_S_Declaration_S3_
{
[FieldOffset(0)]
internal global::Std.TreeEndNode.__Internal_Ptr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair__l___N_std_N___1_S___map_value_compare____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C___N_std_N___1_S___value_type__S1_____N_CppSharp_N_CppParser_N_AST_S_Declaration___N_std_N___1_S_less__S1__Vb1
{
[FieldOffset(0)]
internal uint __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_BaseClassSpecifier___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Field___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Parameter___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_FunctionTemplateSpecialization___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair_____N_CppSharp_N_CppParser_N_AST_S_TemplateArgument___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Method___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_AccessSpecifierDecl___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair_____N_CppSharp_N_CppParser_N_AST_S_VTableComponent___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair_____N_CppSharp_N_CppParser_N_AST_S_VFTableInfo___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair_____N_CppSharp_N_CppParser_N_AST_S_LayoutField___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair_____N_CppSharp_N_CppParser_N_AST_S_LayoutBase___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Class___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Function___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Enumeration_S_Item___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Enumeration___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Namespace___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair_____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_ClassTemplateSpecialization___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_ExpressionObsolete___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_VarTemplateSpecialization___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_MacroDefinition___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_TranslationUnit___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Stmt___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Expr___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_InlineContentComment___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair_____N_CppSharp_N_CppParser_N_AST_S_BlockCommandComment_S_Argument___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair___i___N_std_N___1_S_allocator__i
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_VerbatimBlockLineComment___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair_____N_CppSharp_N_CppParser_N_AST_S_InlineCommandComment_S_Argument___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair_____N_CppSharp_N_CppParser_N_AST_S_HTMLStartTagComment_S_Attribute___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 4)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair_____N_CppSharp_N_CppParser_S_ParserDiagnostic___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
}
@ -144,7 +427,7 @@ namespace Std @@ -144,7 +427,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_PreprocessedEntity___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 12)]
@ -157,7 +440,7 @@ namespace Std @@ -157,7 +440,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Declaration___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 12)]
@ -170,7 +453,7 @@ namespace Std @@ -170,7 +453,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_BlockContentComment___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 12)]
@ -183,7 +466,7 @@ namespace Std @@ -183,7 +466,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Namespace___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 12)]
@ -196,7 +479,7 @@ namespace Std @@ -196,7 +479,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Enumeration___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 12)]
@ -209,7 +492,7 @@ namespace Std @@ -209,7 +492,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Function___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 12)]
@ -222,7 +505,7 @@ namespace Std @@ -222,7 +505,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Class___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 12)]
@ -235,7 +518,7 @@ namespace Std @@ -235,7 +518,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Template___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 12)]
@ -248,7 +531,7 @@ namespace Std @@ -248,7 +531,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_TypedefDecl___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 12)]
@ -261,7 +544,7 @@ namespace Std @@ -261,7 +544,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_TypeAlias___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 12)]
@ -274,7 +557,7 @@ namespace Std @@ -274,7 +557,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Variable___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 12)]
@ -287,7 +570,7 @@ namespace Std @@ -287,7 +570,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Friend___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 12)]
@ -300,7 +583,7 @@ namespace Std @@ -300,7 +583,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_BaseClassSpecifier___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 12)]
@ -313,7 +596,7 @@ namespace Std @@ -313,7 +596,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Field___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 12)]
@ -326,7 +609,7 @@ namespace Std @@ -326,7 +609,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Method___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 12)]
@ -339,7 +622,7 @@ namespace Std @@ -339,7 +622,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Parameter___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 12)]
@ -352,7 +635,7 @@ namespace Std @@ -352,7 +635,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_FunctionTemplateSpecialization___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 12)]
@ -365,7 +648,7 @@ namespace Std @@ -365,7 +648,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair_____N_CppSharp_N_CppParser_N_AST_S_TemplateArgument___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 12)]
@ -378,7 +661,7 @@ namespace Std @@ -378,7 +661,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_AccessSpecifierDecl___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 12)]
@ -391,7 +674,7 @@ namespace Std @@ -391,7 +674,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair_____N_CppSharp_N_CppParser_N_AST_S_VFTableInfo___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 12)]
@ -404,7 +687,7 @@ namespace Std @@ -404,7 +687,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair_____N_CppSharp_N_CppParser_N_AST_S_VTableComponent___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 12)]
@ -417,7 +700,7 @@ namespace Std @@ -417,7 +700,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair_____N_CppSharp_N_CppParser_N_AST_S_LayoutField___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 12)]
@ -430,7 +713,7 @@ namespace Std @@ -430,7 +713,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair_____N_CppSharp_N_CppParser_N_AST_S_LayoutBase___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 12)]
@ -443,7 +726,7 @@ namespace Std @@ -443,7 +726,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Enumeration_S_Item___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 12)]
@ -456,7 +739,7 @@ namespace Std @@ -456,7 +739,7 @@ namespace Std
internal global::Std.BasicString.__Internalc__N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair_____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 12)]
@ -469,7 +752,7 @@ namespace Std @@ -469,7 +752,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_ClassTemplateSpecialization___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 12)]
@ -482,7 +765,7 @@ namespace Std @@ -482,7 +765,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_ExpressionObsolete___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 12)]
@ -495,7 +778,7 @@ namespace Std @@ -495,7 +778,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_VarTemplateSpecialization___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 12)]
@ -508,7 +791,7 @@ namespace Std @@ -508,7 +791,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_MacroDefinition___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 12)]
@ -521,7 +804,7 @@ namespace Std @@ -521,7 +804,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_TranslationUnit___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 12)]
@ -534,7 +817,7 @@ namespace Std @@ -534,7 +817,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Stmt___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 12)]
@ -547,7 +830,7 @@ namespace Std @@ -547,7 +830,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Expr___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 12)]
@ -560,7 +843,7 @@ namespace Std @@ -560,7 +843,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_InlineContentComment___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 12)]
@ -573,7 +856,7 @@ namespace Std @@ -573,7 +856,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair_____N_CppSharp_N_CppParser_N_AST_S_BlockCommandComment_S_Argument___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 12)]
@ -586,7 +869,7 @@ namespace Std @@ -586,7 +869,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair___i___N_std_N___1_S_allocator__i __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 12)]
@ -599,7 +882,7 @@ namespace Std @@ -599,7 +882,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_VerbatimBlockLineComment___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 12)]
@ -612,7 +895,7 @@ namespace Std @@ -612,7 +895,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair_____N_CppSharp_N_CppParser_N_AST_S_InlineCommandComment_S_Argument___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 12)]
@ -625,7 +908,7 @@ namespace Std @@ -625,7 +908,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair_____N_CppSharp_N_CppParser_N_AST_S_HTMLStartTagComment_S_Attribute___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 12)]
@ -638,7 +921,7 @@ namespace Std @@ -638,7 +921,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair_____N_CppSharp_N_CppParser_S_ParserDiagnostic___N_std_N___1_S_allocator__S1_ __end_cap_;
}
}
}
@ -648,16 +931,16 @@ namespace Std @@ -648,16 +931,16 @@ namespace Std
namespace Tree
{
[StructLayout(LayoutKind.Explicit, Size = 12)]
public unsafe partial struct __Internalc__N_std_N___1_S___tree____N_std_N___1_U___value_type____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C____N_CppSharp_N_CppParser_N_AST_S_Declaration___N_std_N___1_S___map_value_compare__S1__S0____N_std_N___1_S_less__S1__Vb1___N_std_N___1_S_allocator__S0_
public unsafe partial struct __Internalc__N_std_N___1_S___tree____N_std_N___1_S___value_type____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C____N_CppSharp_N_CppParser_N_AST_S_Declaration___N_std_N___1_S___map_value_compare__S1__S0____N_std_N___1_S_less__S1__Vb1___N_std_N___1_S_allocator__S0_
{
[FieldOffset(0)]
internal global::System.IntPtr __begin_node_;
[FieldOffset(4)]
internal global::Std.CompressedPair.__Internal __pair1_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair____N_std_N___1_S___tree_end_node_____N_std_N___1_S___tree_node_base___v___N_std_N___1_S_allocator____N_std_N___1_S___tree_node____N_std_N___1_S___value_type____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C____N_CppSharp_N_CppParser_N_AST_S_Declaration_S3_ __pair1_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __pair3_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair__l___N_std_N___1_S___map_value_compare____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C___N_std_N___1_S___value_type__S1_____N_CppSharp_N_CppParser_N_AST_S_Declaration___N_std_N___1_S_less__S1__Vb1 __pair3_;
}
}
@ -680,7 +963,76 @@ namespace Std @@ -680,7 +963,76 @@ namespace Std
public unsafe partial struct __Internalc__N_std_N___1_S_map____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C____N_CppSharp_N_CppParser_N_AST_S_Declaration___N_std_N___1_S_less__S0____N_std_N___1_S_allocator____N_std_N___1_S_pair__1S0__S3_
{
[FieldOffset(0)]
internal global::Std.Tree.__Internalc__N_std_N___1_S___tree____N_std_N___1_U___value_type____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C____N_CppSharp_N_CppParser_N_AST_S_Declaration___N_std_N___1_S___map_value_compare__S1__S0____N_std_N___1_S_less__S1__Vb1___N_std_N___1_S_allocator__S0_ __tree_;
internal global::Std.Tree.__Internalc__N_std_N___1_S___tree____N_std_N___1_S___value_type____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C____N_CppSharp_N_CppParser_N_AST_S_Declaration___N_std_N___1_S___map_value_compare__S1__S0____N_std_N___1_S_less__S1__Vb1___N_std_N___1_S_allocator__S0_ __tree_;
}
}
}
namespace Std
{
namespace CharTraits
{
[StructLayout(LayoutKind.Explicit, Size = 1)]
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<IntPtr, global::Std.CharTraits<_CharT>> NativeToManagedMap = new global::System.Collections.Concurrent.ConcurrentDictionary<IntPtr, global::Std.CharTraits<_CharT>>();
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;
}
}
}
@ -693,7 +1045,7 @@ namespace Std @@ -693,7 +1045,7 @@ namespace Std
public unsafe partial struct __Internalc__N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C
{
[FieldOffset(0)]
internal global::Std.CompressedPair.__Internal __r_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C_S___rep_S2_ __r_;
[SuppressUnmanagedCodeSecurity]
[DllImport("Std-symbols", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
@ -877,72 +1229,6 @@ namespace Std @@ -877,72 +1229,6 @@ namespace Std
}
}
namespace CharTraits
{
[StructLayout(LayoutKind.Explicit, Size = 1)]
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<IntPtr, global::Std.CharTraits<_CharT>> NativeToManagedMap = new global::System.Collections.Concurrent.ConcurrentDictionary<IntPtr, global::Std.CharTraits<_CharT>>();
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;
}
}
public unsafe static partial class BasicStringExtensions
{
[StructLayout(LayoutKind.Explicit, Size = 0)]

52
src/CppParser/Bindings/CSharp/i686-pc-win32-msvc/CppSharp.CppParser.cs

@ -47465,32 +47465,32 @@ namespace CppSharp @@ -47465,32 +47465,32 @@ namespace CppSharp
internal global::Std.BasicString.__Internalc__N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C targetTriple;
[FieldOffset(152)]
internal global::Std.BasicString.__Internalc__N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C resourceDir;
[FieldOffset(176)]
internal byte noStandardIncludes;
[FieldOffset(177)]
[FieldOffset(153)]
internal byte noBuiltinIncludes;
[FieldOffset(178)]
[FieldOffset(154)]
internal byte microsoftMode;
[FieldOffset(179)]
[FieldOffset(155)]
internal byte verbose;
[FieldOffset(180)]
[FieldOffset(156)]
internal byte unityBuild;
[FieldOffset(181)]
[FieldOffset(157)]
internal byte skipPrivateDeclarations;
[FieldOffset(182)]
[FieldOffset(158)]
internal byte skipLayoutInfo;
[FieldOffset(183)]
[FieldOffset(159)]
internal byte skipFunctionBodies;
[FieldOffset(160)]
internal global::Std.BasicString.__Internalc__N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C clangVersion;
[SuppressUnmanagedCodeSecurity]
[DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.ThisCall,
EntryPoint="??0CppParserOptions@CppParser@CppSharp@@QAE@XZ")]
@ -47626,6 +47626,11 @@ namespace CppSharp @@ -47626,6 +47626,11 @@ namespace CppSharp
EntryPoint="?clearSupportedStdTypes@CppParserOptions@CppParser@CppSharp@@QAEXXZ")]
internal static extern void ClearSupportedStdTypes(global::System.IntPtr __instance);
[SuppressUnmanagedCodeSecurity]
[DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.ThisCall,
EntryPoint="?getClangVersion@CppParserOptions@CppParser@CppSharp@@QAE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ")]
internal static extern void GetClangVersion(global::System.IntPtr __instance, global::System.IntPtr @return);
[SuppressUnmanagedCodeSecurity]
[DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.ThisCall,
EntryPoint="?getArgumentsCount@CppParserOptions@CppParser@CppSharp@@QAEIXZ")]
@ -47970,20 +47975,6 @@ namespace CppSharp @@ -47970,20 +47975,6 @@ namespace CppSharp
}
}
public string ResourceDir
{
get
{
var __basicStringRet0 = global::Std.BasicString<sbyte, global::Std.CharTraits<sbyte>, global::Std.Allocator<sbyte>>.__CreateInstance(new global::System.IntPtr(&((global::CppSharp.Parser.CppParserOptions.__Internal*) __Instance)->resourceDir));
return global::Std.BasicStringExtensions.Data(__basicStringRet0);
}
set
{
global::Std.BasicStringExtensions.__Internal.Assign(new global::System.IntPtr(&((global::CppSharp.Parser.CppParserOptions.__Internal*)__Instance)->resourceDir), value);
}
}
public bool NoStandardIncludes
{
get
@ -48088,6 +48079,19 @@ namespace CppSharp @@ -48088,6 +48079,19 @@ namespace CppSharp
}
}
public string ClangVersion
{
get
{
var __ret = new global::Std.BasicString.__Internalc__N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C();
__Internal.GetClangVersion((__Instance + __PointerAdjustment), new IntPtr(&__ret));
var __basicStringRet0 = global::Std.BasicString<sbyte, global::Std.CharTraits<sbyte>, global::Std.Allocator<sbyte>>.__CreateInstance(new global::System.IntPtr(&__ret));
var __retString0 = global::Std.BasicStringExtensions.Data(__basicStringRet0);
__basicStringRet0.Dispose();
return __retString0;
}
}
public uint ArgumentsCount
{
get

62
src/CppParser/Bindings/CSharp/x86_64-apple-darwin12.4.0/CppSharp.CppParser.cs

@ -47464,32 +47464,32 @@ namespace CppSharp @@ -47464,32 +47464,32 @@ namespace CppSharp
internal global::Std.BasicString.__Internalc__N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C targetTriple;
[FieldOffset(256)]
internal global::Std.BasicString.__Internalc__N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C resourceDir;
[FieldOffset(280)]
internal byte noStandardIncludes;
[FieldOffset(281)]
[FieldOffset(257)]
internal byte noBuiltinIncludes;
[FieldOffset(282)]
[FieldOffset(258)]
internal byte microsoftMode;
[FieldOffset(283)]
[FieldOffset(259)]
internal byte verbose;
[FieldOffset(284)]
[FieldOffset(260)]
internal byte unityBuild;
[FieldOffset(285)]
[FieldOffset(261)]
internal byte skipPrivateDeclarations;
[FieldOffset(286)]
[FieldOffset(262)]
internal byte skipLayoutInfo;
[FieldOffset(287)]
[FieldOffset(263)]
internal byte skipFunctionBodies;
[FieldOffset(264)]
internal global::Std.BasicString.__Internalc__N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C clangVersion;
[SuppressUnmanagedCodeSecurity]
[DllImport("CppSharp.CppParser", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
EntryPoint="_ZN8CppSharp9CppParser16CppParserOptionsC2Ev")]
@ -47625,6 +47625,11 @@ namespace CppSharp @@ -47625,6 +47625,11 @@ namespace CppSharp
EntryPoint="_ZN8CppSharp9CppParser16CppParserOptions22clearSupportedStdTypesEv")]
internal static extern void ClearSupportedStdTypes(global::System.IntPtr __instance);
[SuppressUnmanagedCodeSecurity]
[DllImport("CppSharp.CppParser", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
EntryPoint="_ZN8CppSharp9CppParser16CppParserOptions15getClangVersionEv")]
internal static extern void GetClangVersion(global::System.IntPtr @return, global::System.IntPtr __instance);
[SuppressUnmanagedCodeSecurity]
[DllImport("CppSharp.CppParser", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
EntryPoint="_ZN8CppSharp9CppParser16CppParserOptions17getArgumentsCountEv")]
@ -47969,20 +47974,6 @@ namespace CppSharp @@ -47969,20 +47974,6 @@ namespace CppSharp
}
}
public string ResourceDir
{
get
{
var __basicStringRet0 = global::Std.BasicString<sbyte, global::Std.CharTraits<sbyte>, global::Std.Allocator<sbyte>>.__CreateInstance(new global::System.IntPtr(&((global::CppSharp.Parser.CppParserOptions.__Internal*) __Instance)->resourceDir));
return global::Std.BasicStringExtensions.Data(__basicStringRet0);
}
set
{
global::Std.BasicStringExtensions.__Internal.Assign(new global::System.IntPtr(&((global::CppSharp.Parser.CppParserOptions.__Internal*)__Instance)->resourceDir), value);
}
}
public bool NoStandardIncludes
{
get
@ -48087,6 +48078,19 @@ namespace CppSharp @@ -48087,6 +48078,19 @@ namespace CppSharp
}
}
public string ClangVersion
{
get
{
var __ret = new global::Std.BasicString.__Internalc__N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C();
__Internal.GetClangVersion(new IntPtr(&__ret), (__Instance + __PointerAdjustment));
var __basicStringRet0 = global::Std.BasicString<sbyte, global::Std.CharTraits<sbyte>, global::Std.Allocator<sbyte>>.__CreateInstance(new global::System.IntPtr(&__ret));
var __retString0 = global::Std.BasicStringExtensions.Data(__basicStringRet0);
__basicStringRet0.Dispose();
return __retString0;
}
}
public uint ArgumentsCount
{
get
@ -48693,16 +48697,6 @@ namespace Std @@ -48693,16 +48697,6 @@ namespace Std
{
namespace Pair
{
[StructLayout(LayoutKind.Explicit, Size = 32)]
public unsafe partial struct __Internalc__N_std_N___1_S_pair____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C____N_CppSharp_N_CppParser_N_AST_S_Declaration
{
[FieldOffset(0)]
internal global::Std.BasicString.__Internalc__N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C first;
[FieldOffset(24)]
internal global::System.IntPtr second;
}
[StructLayout(LayoutKind.Explicit, Size = 32)]
public unsafe partial struct __Internalc__N_std_N___1_S_pair__1__N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C____N_CppSharp_N_CppParser_N_AST_S_Declaration
{

518
src/CppParser/Bindings/CSharp/x86_64-apple-darwin12.4.0/Std.cs

@ -29,19 +29,302 @@ namespace Std @@ -29,19 +29,302 @@ namespace Std
{
}
namespace Std
{
}
namespace Std
{
namespace CompressedPair
{
[StructLayout(LayoutKind.Explicit, Size = 24)]
public unsafe partial struct __Internal
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C_S___rep_S2_
{
[FieldOffset(0)]
internal global::Std.BasicString.Rep.__Internalc__N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_PreprocessedEntity___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Declaration___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_BlockContentComment___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Template___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_TypedefDecl___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_TypeAlias___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::Std.BasicString.Rep.__Internalc__N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C __first_;
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Variable___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Friend___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair____N_std_N___1_S___tree_end_node_____N_std_N___1_S___tree_node_base___v___N_std_N___1_S_allocator____N_std_N___1_S___tree_node____N_std_N___1_S___value_type____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C____N_CppSharp_N_CppParser_N_AST_S_Declaration_S3_
{
[FieldOffset(0)]
internal global::Std.TreeEndNode.__Internal_Ptr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair__l___N_std_N___1_S___map_value_compare____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C___N_std_N___1_S___value_type__S1_____N_CppSharp_N_CppParser_N_AST_S_Declaration___N_std_N___1_S_less__S1__Vb1
{
[FieldOffset(0)]
internal ulong __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_BaseClassSpecifier___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Field___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Parameter___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_FunctionTemplateSpecialization___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair_____N_CppSharp_N_CppParser_N_AST_S_TemplateArgument___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Method___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_AccessSpecifierDecl___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair_____N_CppSharp_N_CppParser_N_AST_S_VTableComponent___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair_____N_CppSharp_N_CppParser_N_AST_S_VFTableInfo___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair_____N_CppSharp_N_CppParser_N_AST_S_LayoutField___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair_____N_CppSharp_N_CppParser_N_AST_S_LayoutBase___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Class___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Function___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Enumeration_S_Item___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Enumeration___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Namespace___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair_____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_ClassTemplateSpecialization___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_ExpressionObsolete___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_VarTemplateSpecialization___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_MacroDefinition___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_TranslationUnit___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Stmt___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Expr___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_InlineContentComment___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair_____N_CppSharp_N_CppParser_N_AST_S_BlockCommandComment_S_Argument___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair___i___N_std_N___1_S_allocator__i
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_VerbatimBlockLineComment___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair_____N_CppSharp_N_CppParser_N_AST_S_InlineCommandComment_S_Argument___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair_____N_CppSharp_N_CppParser_N_AST_S_HTMLStartTagComment_S_Attribute___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_N___1_S___compressed_pair_____N_CppSharp_N_CppParser_S_ParserDiagnostic___N_std_N___1_S_allocator__S1_
{
[FieldOffset(0)]
internal global::System.IntPtr __value_;
}
}
@ -144,7 +427,7 @@ namespace Std @@ -144,7 +427,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_PreprocessedEntity___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 24)]
@ -157,7 +440,7 @@ namespace Std @@ -157,7 +440,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Declaration___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 24)]
@ -170,7 +453,7 @@ namespace Std @@ -170,7 +453,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_BlockContentComment___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 24)]
@ -183,7 +466,7 @@ namespace Std @@ -183,7 +466,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Namespace___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 24)]
@ -196,7 +479,7 @@ namespace Std @@ -196,7 +479,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Enumeration___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 24)]
@ -209,7 +492,7 @@ namespace Std @@ -209,7 +492,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Function___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 24)]
@ -222,7 +505,7 @@ namespace Std @@ -222,7 +505,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Class___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 24)]
@ -235,7 +518,7 @@ namespace Std @@ -235,7 +518,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Template___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 24)]
@ -248,7 +531,7 @@ namespace Std @@ -248,7 +531,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_TypedefDecl___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 24)]
@ -261,7 +544,7 @@ namespace Std @@ -261,7 +544,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_TypeAlias___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 24)]
@ -274,7 +557,7 @@ namespace Std @@ -274,7 +557,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Variable___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 24)]
@ -287,7 +570,7 @@ namespace Std @@ -287,7 +570,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Friend___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 24)]
@ -300,7 +583,7 @@ namespace Std @@ -300,7 +583,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_BaseClassSpecifier___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 24)]
@ -313,7 +596,7 @@ namespace Std @@ -313,7 +596,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Field___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 24)]
@ -326,7 +609,7 @@ namespace Std @@ -326,7 +609,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Method___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 24)]
@ -339,7 +622,7 @@ namespace Std @@ -339,7 +622,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Parameter___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 24)]
@ -352,7 +635,7 @@ namespace Std @@ -352,7 +635,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_FunctionTemplateSpecialization___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 24)]
@ -365,7 +648,7 @@ namespace Std @@ -365,7 +648,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair_____N_CppSharp_N_CppParser_N_AST_S_TemplateArgument___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 24)]
@ -378,7 +661,7 @@ namespace Std @@ -378,7 +661,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_AccessSpecifierDecl___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 24)]
@ -391,7 +674,7 @@ namespace Std @@ -391,7 +674,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair_____N_CppSharp_N_CppParser_N_AST_S_VFTableInfo___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 24)]
@ -404,7 +687,7 @@ namespace Std @@ -404,7 +687,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair_____N_CppSharp_N_CppParser_N_AST_S_VTableComponent___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 24)]
@ -417,7 +700,7 @@ namespace Std @@ -417,7 +700,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair_____N_CppSharp_N_CppParser_N_AST_S_LayoutField___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 24)]
@ -430,7 +713,7 @@ namespace Std @@ -430,7 +713,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair_____N_CppSharp_N_CppParser_N_AST_S_LayoutBase___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 24)]
@ -443,7 +726,7 @@ namespace Std @@ -443,7 +726,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Enumeration_S_Item___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 24)]
@ -456,7 +739,7 @@ namespace Std @@ -456,7 +739,7 @@ namespace Std
internal global::Std.BasicString.__Internalc__N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair_____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 24)]
@ -469,7 +752,7 @@ namespace Std @@ -469,7 +752,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_ClassTemplateSpecialization___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 24)]
@ -482,7 +765,7 @@ namespace Std @@ -482,7 +765,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_ExpressionObsolete___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 24)]
@ -495,7 +778,7 @@ namespace Std @@ -495,7 +778,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_VarTemplateSpecialization___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 24)]
@ -508,7 +791,7 @@ namespace Std @@ -508,7 +791,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_MacroDefinition___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 24)]
@ -521,7 +804,7 @@ namespace Std @@ -521,7 +804,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_TranslationUnit___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 24)]
@ -534,7 +817,7 @@ namespace Std @@ -534,7 +817,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Stmt___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 24)]
@ -547,7 +830,7 @@ namespace Std @@ -547,7 +830,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_Expr___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 24)]
@ -560,7 +843,7 @@ namespace Std @@ -560,7 +843,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_InlineContentComment___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 24)]
@ -573,7 +856,7 @@ namespace Std @@ -573,7 +856,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair_____N_CppSharp_N_CppParser_N_AST_S_BlockCommandComment_S_Argument___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 24)]
@ -586,7 +869,7 @@ namespace Std @@ -586,7 +869,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair___i___N_std_N___1_S_allocator__i __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 24)]
@ -599,7 +882,7 @@ namespace Std @@ -599,7 +882,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair______N_CppSharp_N_CppParser_N_AST_S_VerbatimBlockLineComment___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 24)]
@ -612,7 +895,7 @@ namespace Std @@ -612,7 +895,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair_____N_CppSharp_N_CppParser_N_AST_S_InlineCommandComment_S_Argument___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 24)]
@ -625,7 +908,7 @@ namespace Std @@ -625,7 +908,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair_____N_CppSharp_N_CppParser_N_AST_S_HTMLStartTagComment_S_Attribute___N_std_N___1_S_allocator__S1_ __end_cap_;
}
[StructLayout(LayoutKind.Explicit, Size = 24)]
@ -638,7 +921,7 @@ namespace Std @@ -638,7 +921,7 @@ namespace Std
internal global::System.IntPtr __end_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __end_cap_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair_____N_CppSharp_N_CppParser_S_ParserDiagnostic___N_std_N___1_S_allocator__S1_ __end_cap_;
}
}
}
@ -648,16 +931,16 @@ namespace Std @@ -648,16 +931,16 @@ namespace Std
namespace Tree
{
[StructLayout(LayoutKind.Explicit, Size = 24)]
public unsafe partial struct __Internalc__N_std_N___1_S___tree____N_std_N___1_U___value_type____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C____N_CppSharp_N_CppParser_N_AST_S_Declaration___N_std_N___1_S___map_value_compare__S1__S0____N_std_N___1_S_less__S1__Vb1___N_std_N___1_S_allocator__S0_
public unsafe partial struct __Internalc__N_std_N___1_S___tree____N_std_N___1_S___value_type____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C____N_CppSharp_N_CppParser_N_AST_S_Declaration___N_std_N___1_S___map_value_compare__S1__S0____N_std_N___1_S_less__S1__Vb1___N_std_N___1_S_allocator__S0_
{
[FieldOffset(0)]
internal global::System.IntPtr __begin_node_;
[FieldOffset(8)]
internal global::Std.CompressedPair.__Internal __pair1_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair____N_std_N___1_S___tree_end_node_____N_std_N___1_S___tree_node_base___v___N_std_N___1_S_allocator____N_std_N___1_S___tree_node____N_std_N___1_S___value_type____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C____N_CppSharp_N_CppParser_N_AST_S_Declaration_S3_ __pair1_;
[FieldOffset(16)]
internal global::Std.CompressedPair.__Internal __pair3_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair__l___N_std_N___1_S___map_value_compare____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C___N_std_N___1_S___value_type__S1_____N_CppSharp_N_CppParser_N_AST_S_Declaration___N_std_N___1_S_less__S1__Vb1 __pair3_;
}
}
@ -680,7 +963,76 @@ namespace Std @@ -680,7 +963,76 @@ namespace Std
public unsafe partial struct __Internalc__N_std_N___1_S_map____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C____N_CppSharp_N_CppParser_N_AST_S_Declaration___N_std_N___1_S_less__S0____N_std_N___1_S_allocator____N_std_N___1_S_pair__1S0__S3_
{
[FieldOffset(0)]
internal global::Std.Tree.__Internalc__N_std_N___1_S___tree____N_std_N___1_U___value_type____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C____N_CppSharp_N_CppParser_N_AST_S_Declaration___N_std_N___1_S___map_value_compare__S1__S0____N_std_N___1_S_less__S1__Vb1___N_std_N___1_S_allocator__S0_ __tree_;
internal global::Std.Tree.__Internalc__N_std_N___1_S___tree____N_std_N___1_S___value_type____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C____N_CppSharp_N_CppParser_N_AST_S_Declaration___N_std_N___1_S___map_value_compare__S1__S0____N_std_N___1_S_less__S1__Vb1___N_std_N___1_S_allocator__S0_ __tree_;
}
}
}
namespace Std
{
namespace CharTraits
{
[StructLayout(LayoutKind.Explicit, Size = 1)]
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<IntPtr, global::Std.CharTraits<_CharT>> NativeToManagedMap = new global::System.Collections.Concurrent.ConcurrentDictionary<IntPtr, global::Std.CharTraits<_CharT>>();
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;
}
}
}
@ -693,7 +1045,7 @@ namespace Std @@ -693,7 +1045,7 @@ namespace Std
public unsafe partial struct __Internalc__N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C
{
[FieldOffset(0)]
internal global::Std.CompressedPair.__Internal __r_;
internal global::Std.CompressedPair.__Internalc__N_std_N___1_S___compressed_pair____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C_S___rep_S2_ __r_;
[SuppressUnmanagedCodeSecurity]
[DllImport("Std-symbols", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
@ -877,72 +1229,6 @@ namespace Std @@ -877,72 +1229,6 @@ namespace Std
}
}
namespace CharTraits
{
[StructLayout(LayoutKind.Explicit, Size = 1)]
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<IntPtr, global::Std.CharTraits<_CharT>> NativeToManagedMap = new global::System.Collections.Concurrent.ConcurrentDictionary<IntPtr, global::Std.CharTraits<_CharT>>();
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;
}
}
public unsafe static partial class BasicStringExtensions
{
[StructLayout(LayoutKind.Explicit, Size = 0)]

52
src/CppParser/Bindings/CSharp/x86_64-linux-gnu-cxx11abi/CppSharp.CppParser.cs

@ -47464,32 +47464,32 @@ namespace CppSharp @@ -47464,32 +47464,32 @@ namespace CppSharp
internal global::Std.BasicString.__Internalc__N_std_N___cxx11_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C targetTriple;
[FieldOffset(272)]
internal global::Std.BasicString.__Internalc__N_std_N___cxx11_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C resourceDir;
[FieldOffset(304)]
internal byte noStandardIncludes;
[FieldOffset(305)]
[FieldOffset(273)]
internal byte noBuiltinIncludes;
[FieldOffset(306)]
[FieldOffset(274)]
internal byte microsoftMode;
[FieldOffset(307)]
[FieldOffset(275)]
internal byte verbose;
[FieldOffset(308)]
[FieldOffset(276)]
internal byte unityBuild;
[FieldOffset(309)]
[FieldOffset(277)]
internal byte skipPrivateDeclarations;
[FieldOffset(310)]
[FieldOffset(278)]
internal byte skipLayoutInfo;
[FieldOffset(311)]
[FieldOffset(279)]
internal byte skipFunctionBodies;
[FieldOffset(280)]
internal global::Std.BasicString.__Internalc__N_std_N___cxx11_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C clangVersion;
[SuppressUnmanagedCodeSecurity]
[DllImport("CppSharp.CppParser", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
EntryPoint="_ZN8CppSharp9CppParser16CppParserOptionsC2Ev")]
@ -47625,6 +47625,11 @@ namespace CppSharp @@ -47625,6 +47625,11 @@ namespace CppSharp
EntryPoint="_ZN8CppSharp9CppParser16CppParserOptions22clearSupportedStdTypesEv")]
internal static extern void ClearSupportedStdTypes(global::System.IntPtr __instance);
[SuppressUnmanagedCodeSecurity]
[DllImport("CppSharp.CppParser", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
EntryPoint="_ZN8CppSharp9CppParser16CppParserOptions15getClangVersionB5cxx11Ev")]
internal static extern void GetClangVersion(global::System.IntPtr @return, global::System.IntPtr __instance);
[SuppressUnmanagedCodeSecurity]
[DllImport("CppSharp.CppParser", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
EntryPoint="_ZN8CppSharp9CppParser16CppParserOptions17getArgumentsCountEv")]
@ -47969,20 +47974,6 @@ namespace CppSharp @@ -47969,20 +47974,6 @@ namespace CppSharp
}
}
public string ResourceDir
{
get
{
var __basicStringRet0 = global::Std.BasicString<sbyte, global::Std.CharTraits<sbyte>, global::Std.Allocator<sbyte>>.__CreateInstance(new global::System.IntPtr(&((global::CppSharp.Parser.CppParserOptions.__Internal*) __Instance)->resourceDir));
return global::Std.BasicStringExtensions.Data(__basicStringRet0);
}
set
{
global::Std.BasicStringExtensions.__Internal.Assign(new global::System.IntPtr(&((global::CppSharp.Parser.CppParserOptions.__Internal*)__Instance)->resourceDir), value);
}
}
public bool NoStandardIncludes
{
get
@ -48087,6 +48078,19 @@ namespace CppSharp @@ -48087,6 +48078,19 @@ namespace CppSharp
}
}
public string ClangVersion
{
get
{
var __ret = new global::Std.BasicString.__Internalc__N_std_N___cxx11_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C();
__Internal.GetClangVersion(new IntPtr(&__ret), (__Instance + __PointerAdjustment));
var __basicStringRet0 = global::Std.BasicString<sbyte, global::Std.CharTraits<sbyte>, global::Std.Allocator<sbyte>>.__CreateInstance(new global::System.IntPtr(&__ret));
var __retString0 = global::Std.BasicStringExtensions.Data(__basicStringRet0);
__basicStringRet0.Dispose();
return __retString0;
}
}
public uint ArgumentsCount
{
get

52
src/CppParser/Bindings/CSharp/x86_64-linux-gnu/CppSharp.CppParser.cs

@ -47464,32 +47464,32 @@ namespace CppSharp @@ -47464,32 +47464,32 @@ namespace CppSharp
internal global::Std.BasicString.__Internalc__N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C targetTriple;
[FieldOffset(224)]
internal global::Std.BasicString.__Internalc__N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C resourceDir;
[FieldOffset(232)]
internal byte noStandardIncludes;
[FieldOffset(233)]
[FieldOffset(225)]
internal byte noBuiltinIncludes;
[FieldOffset(234)]
[FieldOffset(226)]
internal byte microsoftMode;
[FieldOffset(235)]
[FieldOffset(227)]
internal byte verbose;
[FieldOffset(236)]
[FieldOffset(228)]
internal byte unityBuild;
[FieldOffset(237)]
[FieldOffset(229)]
internal byte skipPrivateDeclarations;
[FieldOffset(238)]
[FieldOffset(230)]
internal byte skipLayoutInfo;
[FieldOffset(239)]
[FieldOffset(231)]
internal byte skipFunctionBodies;
[FieldOffset(232)]
internal global::Std.BasicString.__Internalc__N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C clangVersion;
[SuppressUnmanagedCodeSecurity]
[DllImport("CppSharp.CppParser", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
EntryPoint="_ZN8CppSharp9CppParser16CppParserOptionsC2Ev")]
@ -47625,6 +47625,11 @@ namespace CppSharp @@ -47625,6 +47625,11 @@ namespace CppSharp
EntryPoint="_ZN8CppSharp9CppParser16CppParserOptions22clearSupportedStdTypesEv")]
internal static extern void ClearSupportedStdTypes(global::System.IntPtr __instance);
[SuppressUnmanagedCodeSecurity]
[DllImport("CppSharp.CppParser", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
EntryPoint="_ZN8CppSharp9CppParser16CppParserOptions15getClangVersionEv")]
internal static extern void GetClangVersion(global::System.IntPtr @return, global::System.IntPtr __instance);
[SuppressUnmanagedCodeSecurity]
[DllImport("CppSharp.CppParser", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
EntryPoint="_ZN8CppSharp9CppParser16CppParserOptions17getArgumentsCountEv")]
@ -47969,20 +47974,6 @@ namespace CppSharp @@ -47969,20 +47974,6 @@ namespace CppSharp
}
}
public string ResourceDir
{
get
{
var __basicStringRet0 = global::Std.BasicString<sbyte, global::Std.CharTraits<sbyte>, global::Std.Allocator<sbyte>>.__CreateInstance(new global::System.IntPtr(&((global::CppSharp.Parser.CppParserOptions.__Internal*) __Instance)->resourceDir));
return global::Std.BasicStringExtensions.Data(__basicStringRet0);
}
set
{
global::Std.BasicStringExtensions.__Internal.Assign(new global::System.IntPtr(&((global::CppSharp.Parser.CppParserOptions.__Internal*)__Instance)->resourceDir), value);
}
}
public bool NoStandardIncludes
{
get
@ -48087,6 +48078,19 @@ namespace CppSharp @@ -48087,6 +48078,19 @@ namespace CppSharp
}
}
public string ClangVersion
{
get
{
var __ret = new global::Std.BasicString.__Internalc__N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C();
__Internal.GetClangVersion(new IntPtr(&__ret), (__Instance + __PointerAdjustment));
var __basicStringRet0 = global::Std.BasicString<sbyte, global::Std.CharTraits<sbyte>, global::Std.Allocator<sbyte>>.__CreateInstance(new global::System.IntPtr(&__ret));
var __retString0 = global::Std.BasicStringExtensions.Data(__basicStringRet0);
__basicStringRet0.Dispose();
return __retString0;
}
}
public uint ArgumentsCount
{
get

52
src/CppParser/Bindings/CSharp/x86_64-pc-win32-msvc/CppSharp.CppParser.cs

@ -47465,32 +47465,32 @@ namespace CppSharp @@ -47465,32 +47465,32 @@ namespace CppSharp
internal global::Std.BasicString.__Internalc__N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C targetTriple;
[FieldOffset(272)]
internal global::Std.BasicString.__Internalc__N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C resourceDir;
[FieldOffset(304)]
internal byte noStandardIncludes;
[FieldOffset(305)]
[FieldOffset(273)]
internal byte noBuiltinIncludes;
[FieldOffset(306)]
[FieldOffset(274)]
internal byte microsoftMode;
[FieldOffset(307)]
[FieldOffset(275)]
internal byte verbose;
[FieldOffset(308)]
[FieldOffset(276)]
internal byte unityBuild;
[FieldOffset(309)]
[FieldOffset(277)]
internal byte skipPrivateDeclarations;
[FieldOffset(310)]
[FieldOffset(278)]
internal byte skipLayoutInfo;
[FieldOffset(311)]
[FieldOffset(279)]
internal byte skipFunctionBodies;
[FieldOffset(280)]
internal global::Std.BasicString.__Internalc__N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C clangVersion;
[SuppressUnmanagedCodeSecurity]
[DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
EntryPoint="??0CppParserOptions@CppParser@CppSharp@@QEAA@XZ")]
@ -47626,6 +47626,11 @@ namespace CppSharp @@ -47626,6 +47626,11 @@ namespace CppSharp
EntryPoint="?clearSupportedStdTypes@CppParserOptions@CppParser@CppSharp@@QEAAXXZ")]
internal static extern void ClearSupportedStdTypes(global::System.IntPtr __instance);
[SuppressUnmanagedCodeSecurity]
[DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
EntryPoint="?getClangVersion@CppParserOptions@CppParser@CppSharp@@QEAA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ")]
internal static extern void GetClangVersion(global::System.IntPtr __instance, global::System.IntPtr @return);
[SuppressUnmanagedCodeSecurity]
[DllImport("CppSharp.CppParser.dll", CallingConvention = global::System.Runtime.InteropServices.CallingConvention.Cdecl,
EntryPoint="?getArgumentsCount@CppParserOptions@CppParser@CppSharp@@QEAAIXZ")]
@ -47970,20 +47975,6 @@ namespace CppSharp @@ -47970,20 +47975,6 @@ namespace CppSharp
}
}
public string ResourceDir
{
get
{
var __basicStringRet0 = global::Std.BasicString<sbyte, global::Std.CharTraits<sbyte>, global::Std.Allocator<sbyte>>.__CreateInstance(new global::System.IntPtr(&((global::CppSharp.Parser.CppParserOptions.__Internal*) __Instance)->resourceDir));
return global::Std.BasicStringExtensions.Data(__basicStringRet0);
}
set
{
global::Std.BasicStringExtensions.__Internal.Assign(new global::System.IntPtr(&((global::CppSharp.Parser.CppParserOptions.__Internal*)__Instance)->resourceDir), value);
}
}
public bool NoStandardIncludes
{
get
@ -48088,6 +48079,19 @@ namespace CppSharp @@ -48088,6 +48079,19 @@ namespace CppSharp
}
}
public string ClangVersion
{
get
{
var __ret = new global::Std.BasicString.__Internalc__N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C();
__Internal.GetClangVersion((__Instance + __PointerAdjustment), new IntPtr(&__ret));
var __basicStringRet0 = global::Std.BasicString<sbyte, global::Std.CharTraits<sbyte>, global::Std.Allocator<sbyte>>.__CreateInstance(new global::System.IntPtr(&__ret));
var __retString0 = global::Std.BasicStringExtensions.Data(__basicStringRet0);
__basicStringRet0.Dispose();
return __retString0;
}
}
public uint ArgumentsCount
{
get

4
src/CppParser/CppParser.cpp

@ -7,6 +7,7 @@ @@ -7,6 +7,7 @@
#include "CppParser.h"
#include "Parser.h"
#include <clang/Basic/Version.inc>
namespace CppSharp { namespace CppParser {
@ -21,11 +22,14 @@ CppParserOptions::CppParserOptions() @@ -21,11 +22,14 @@ CppParserOptions::CppParserOptions()
, skipPrivateDeclarations(true)
, skipLayoutInfo(false)
, skipFunctionBodies(true)
, clangVersion(CLANG_VERSION_STRING)
{
}
CppParserOptions::~CppParserOptions() {}
std::string CppParserOptions::getClangVersion() { return clangVersion; }
DEF_VECTOR_STRING(CppParserOptions, Arguments)
DEF_VECTOR_STRING(CppParserOptions, SourceFiles)
DEF_VECTOR_STRING(CppParserOptions, IncludeDirs)

9
src/CppParser/CppParser.h

@ -11,6 +11,9 @@ @@ -11,6 +11,9 @@
#include "Helpers.h"
#include "Target.h"
#define CS_INTERNAL
#define CS_READONLY
namespace CppSharp { namespace CppParser {
using namespace CppSharp::CppParser::AST;
@ -20,6 +23,8 @@ struct CS_API CppParserOptions @@ -20,6 +23,8 @@ struct CS_API CppParserOptions
CppParserOptions();
~CppParserOptions();
std::string getClangVersion();
VECTOR_STRING(Arguments)
std::string libraryFile;
// C/C++ header file names.
@ -37,7 +42,6 @@ struct CS_API CppParserOptions @@ -37,7 +42,6 @@ struct CS_API CppParserOptions
int toolSetToUse;
std::string targetTriple;
std::string resourceDir;
bool noStandardIncludes;
bool noBuiltinIncludes;
@ -47,6 +51,9 @@ struct CS_API CppParserOptions @@ -47,6 +51,9 @@ struct CS_API CppParserOptions
bool skipPrivateDeclarations;
bool skipLayoutInfo;
bool skipFunctionBodies;
private:
std::string clangVersion;
};
enum class ParserDiagnosticLevel

25
src/CppParser/Parser.cpp

@ -211,22 +211,6 @@ void Parser::ReadClassLayout(Class* Class, const clang::RecordDecl* RD, @@ -211,22 +211,6 @@ void Parser::ReadClassLayout(Class* Class, const clang::RecordDecl* RD,
//-----------------------------------//
// Compute the path to the resource directory.
static std::string GetClangResourceDir(std::string baseResourceDir)
{
llvm::SmallString<128> Path(baseResourceDir);
llvm::StringRef ClangResourceDir(CLANG_RESOURCE_DIR);
if (ClangResourceDir != "")
llvm::sys::path::append(Path, ClangResourceDir);
else
llvm::sys::path::append(Path, "lib", "clang", CLANG_VERSION_STRING);
return Path.str();
}
//-----------------------------------//
static clang::TargetCXXABI::Kind
ConvertToClangTargetCXXABI(CppSharp::CppParser::AST::CppAbi abi)
{
@ -320,15 +304,6 @@ void Parser::Setup() @@ -320,15 +304,6 @@ void Parser::Setup()
if (opts->verbose)
HSOpts.Verbose = true;
// Initialize the builtin compiler headers.
HSOpts.ResourceDir = GetClangResourceDir(opts->resourceDir);
llvm::SmallString<128> ResourceDir(HSOpts.ResourceDir);
llvm::sys::path::append(ResourceDir, "include");
HSOpts.AddPath(ResourceDir.str(), clang::frontend::System, /*IsFramework=*/false,
/*IgnoreSysRoot=*/false);
for (unsigned I = 0, E = opts->IncludeDirs.size(); I != E; ++I)
{
const auto& s = opts->IncludeDirs[I];

19
src/CppParser/ParserGen/ParserGen.cs

@ -104,27 +104,12 @@ namespace CppSharp @@ -104,27 +104,12 @@ namespace CppSharp
options.MicrosoftMode = false;
options.NoBuiltinIncludes = true;
if (Platform.IsMacOS)
{
var headersPaths = new List<string> {
Path.Combine(GetSourceDirectory("deps"), "llvm/tools/clang/lib/Headers"),
Path.Combine(GetSourceDirectory("deps"), "libcxx", "include"),
"/usr/include",
};
foreach (var header in headersPaths)
Console.WriteLine(header);
foreach (var header in headersPaths)
options.AddSystemIncludeDirs(header);
}
var headersPath = Path.Combine(GetSourceDirectory("build"), "headers",
"osx");
options.AddSystemIncludeDirs(Path.Combine(headersPath, "include"));
options.AddSystemIncludeDirs(Path.Combine(headersPath, "clang", "4.2", "include"));
options.AddSystemIncludeDirs(Path.Combine(headersPath, "libcxx", "include"));
options.AddSystemIncludeDirs(options.BuiltinsDir);
options.AddSystemIncludeDirs(Path.Combine(headersPath, "include"));
options.AddArguments("-stdlib=libc++");
}

53
src/Parser/ParserOptions.cs

@ -76,7 +76,6 @@ namespace CppSharp.Parser @@ -76,7 +76,6 @@ namespace CppSharp.Parser
SkipFunctionBodies = options.SkipFunctionBodies;
SkipLayoutInfo = options.SkipLayoutInfo;
ForceClangToolchainLookup = options.ForceClangToolchainLookup;
ResourceDir = options.ResourceDir;
}
public bool IsItaniumLikeAbi => !IsMicrosoftAbi;
@ -208,6 +207,8 @@ namespace CppSharp.Parser @@ -208,6 +207,8 @@ namespace CppSharp.Parser
NoStandardIncludes = true;
NoBuiltinIncludes = true;
AddSystemIncludeDirs(BuiltinsDir);
vsVersion = MSVCToolchain.FindVSVersion(vsVersion);
foreach (var include in MSVCToolchain.GetSystemIncludes(vsVersion))
AddSystemIncludeDirs(include);
@ -222,11 +223,22 @@ namespace CppSharp.Parser @@ -222,11 +223,22 @@ namespace CppSharp.Parser
AddArguments("-fdelayed-template-parsing");
}
/// <summary>
/// Set to true to opt for Xcode Clang builtin headers
/// </summary>
public bool UseXcodeBuiltins;
public void SetupXcode()
{
var cppIncPath = XcodeToolchain.GetXcodeCppIncludesFolder();
AddSystemIncludeDirs(cppIncPath);
var builtinsPath = XcodeToolchain.GetXcodeBuiltinIncludesFolder();
if (UseXcodeBuiltins)
AddSystemIncludeDirs(builtinsPath);
else
AddSystemIncludeDirs(BuiltinsDir);
var includePath = XcodeToolchain.GetXcodeIncludesFolder();
AddSystemIncludeDirs(includePath);
@ -242,6 +254,7 @@ namespace CppSharp.Parser @@ -242,6 +254,7 @@ namespace CppSharp.Parser
if (!Platform.IsLinux)
{
compiler = "gcc";
// Search for the available GCC versions on the provided headers.
var versions = Directory.EnumerateDirectories(Path.Combine(headersPath,
"usr", "include", "c++"));
@ -252,15 +265,19 @@ namespace CppSharp.Parser @@ -252,15 +265,19 @@ namespace CppSharp.Parser
string gccVersionPath = versions.First();
longVersion = shortVersion = gccVersionPath.Substring(
gccVersionPath.LastIndexOf(Path.DirectorySeparatorChar) + 1);
return;
}
var info = new ProcessStartInfo(Environment.GetEnvironmentVariable("CXX") ?? "gcc", "-v");
info.RedirectStandardError = true;
info.CreateNoWindow = true;
info.UseShellExecute = false;
var process = Process.Start(info);
if (process == null)
throw new SystemException("GCC compiler was not found.");
process.WaitForExit();
var output = process.StandardError.ReadToEnd();
@ -282,8 +299,10 @@ namespace CppSharp.Parser @@ -282,8 +299,10 @@ namespace CppSharp.Parser
string compiler, longVersion, shortVersion;
GetUnixCompilerInfo(headersPath, out compiler, out longVersion, out shortVersion);
string[] versions = {longVersion, shortVersion};
string[] triples = {"x86_64-linux-gnu", "x86_64-pc-linux-gnu"};
AddSystemIncludeDirs(BuiltinsDir);
string[] versions = { longVersion, shortVersion };
string[] triples = { "x86_64-linux-gnu", "x86_64-pc-linux-gnu" };
if (compiler == "gcc")
{
foreach (var version in versions)
@ -319,8 +338,6 @@ namespace CppSharp.Parser @@ -319,8 +338,6 @@ namespace CppSharp.Parser
{
SetupArguments();
SetupBuiltinIncludes();
if (!NoBuiltinIncludes)
SetupIncludes();
}
@ -380,25 +397,23 @@ namespace CppSharp.Parser @@ -380,25 +397,23 @@ namespace CppSharp.Parser
AddArguments("-fno-rtti");
}
private void SetupBuiltinIncludes()
public string BuiltinsDir
{
// If we have an explicit resource directory, then do nothing.
if (!string.IsNullOrEmpty(ResourceDir))
return;
// Else use the resource directory that was bundled next to the
// binaries by the build bootstrap scripts.
var assemblyDir = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
if (!Directory.Exists(Path.Combine(assemblyDir, "lib", "clang")))
throw new Exception("Clang resource folder 'lib/clang/<version>' was not found.");
ResourceDir = assemblyDir;
get
{
var assemblyDir = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
var builtinsDir = Path.Combine(assemblyDir, "lib", "clang", ClangVersion, "include");
return builtinsDir;
}
}
private void SetupIncludes()
{
switch(Platform.Host)
// Check that the builtin includes folder exists.
if (!Directory.Exists(BuiltinsDir))
throw new Exception($"Clang resource folder 'lib/clang/{ClangVersion}/include' was not found.");
switch (Platform.Host)
{
case TargetPlatform.Windows:
SetupMSVC();

Loading…
Cancel
Save