Browse Source

Made Function a DeclarationContext to match the Clang AST. (#896)

pull/620/merge
Kimon Topouzidis 8 years ago committed by Dimitar Dobrev
parent
commit
3760d4d550
  1. 2
      src/AST/Function.cs
  2. 2
      src/CppParser/AST.cpp
  3. 2
      src/CppParser/AST.h
  4. 12
      src/CppParser/Bindings/CLI/AST.cpp
  5. 2
      src/CppParser/Bindings/CLI/AST.h
  6. 162
      src/CppParser/Bindings/CSharp/i686-apple-darwin12.4.0/CppSharp.CppParser.cs
  7. 162
      src/CppParser/Bindings/CSharp/i686-pc-win32-msvc/CppSharp.CppParser.cs
  8. 50
      src/CppParser/Bindings/CSharp/i686-pc-win32-msvc/Std.cs
  9. 162
      src/CppParser/Bindings/CSharp/x86_64-apple-darwin12.4.0/CppSharp.CppParser.cs
  10. 162
      src/CppParser/Bindings/CSharp/x86_64-linux-gnu-cxx11abi/CppSharp.CppParser.cs
  11. 162
      src/CppParser/Bindings/CSharp/x86_64-linux-gnu/CppSharp.CppParser.cs
  12. 162
      src/CppParser/Bindings/CSharp/x86_64-pc-win32-msvc/CppSharp.CppParser.cs
  13. 50
      src/CppParser/Bindings/CSharp/x86_64-pc-win32-msvc/Std.cs
  14. 3
      src/Generator/Passes/CheckMacrosPass.cs
  15. 17
      src/Parser/ASTConverter.cs

2
src/AST/Function.cs

@ -137,7 +137,7 @@ namespace CppSharp.AST
Undeclared Undeclared
} }
public class Function : Declaration, ITypedDecl, IMangledDecl public class Function : DeclarationContext, ITypedDecl, IMangledDecl
{ {
public Function() public Function()
{ {

2
src/CppParser/AST.cpp

@ -626,7 +626,7 @@ Parameter::~Parameter()
} }
Function::Function() Function::Function()
: Declaration(DeclarationKind::Function) : DeclarationContext(DeclarationKind::Function)
, isReturnIndirect(false) , isReturnIndirect(false)
, isConstExpr(false) , isConstExpr(false)
, isVariadic(false) , isVariadic(false)

2
src/CppParser/AST.h

@ -716,7 +716,7 @@ enum class FriendKind
Undeclared Undeclared
}; };
class CS_API Function : public Declaration class CS_API Function : public DeclarationContext
{ {
public: public:
Function(); Function();

12
src/CppParser/Bindings/CLI/AST.cpp

@ -2608,13 +2608,13 @@ void CppSharp::Parser::AST::DeclarationContext::Enums::set(System::Collections::
System::Collections::Generic::List<CppSharp::Parser::AST::Function^>^ CppSharp::Parser::AST::DeclarationContext::Functions::get() System::Collections::Generic::List<CppSharp::Parser::AST::Function^>^ CppSharp::Parser::AST::DeclarationContext::Functions::get()
{ {
auto _tmp__Functions = gcnew System::Collections::Generic::List<CppSharp::Parser::AST::Function^>(); auto _tmp__Functions_ = gcnew System::Collections::Generic::List<CppSharp::Parser::AST::Function^>();
for(auto _element : ((::CppSharp::CppParser::AST::DeclarationContext*)NativePtr)->Functions) for(auto _element : ((::CppSharp::CppParser::AST::DeclarationContext*)NativePtr)->Functions)
{ {
auto _marshalElement = (_element == nullptr) ? nullptr : gcnew CppSharp::Parser::AST::Function((::CppSharp::CppParser::AST::Function*)_element); auto _marshalElement = (_element == nullptr) ? nullptr : gcnew CppSharp::Parser::AST::Function((::CppSharp::CppParser::AST::Function*)_element);
_tmp__Functions->Add(_marshalElement); _tmp__Functions_->Add(_marshalElement);
} }
return _tmp__Functions; return _tmp__Functions_;
} }
void CppSharp::Parser::AST::DeclarationContext::Functions::set(System::Collections::Generic::List<CppSharp::Parser::AST::Function^>^ value) void CppSharp::Parser::AST::DeclarationContext::Functions::set(System::Collections::Generic::List<CppSharp::Parser::AST::Function^>^ value)
@ -3458,7 +3458,7 @@ void CppSharp::Parser::AST::Parameter::DefaultArgument::set(CppSharp::Parser::AS
} }
CppSharp::Parser::AST::Function::Function(::CppSharp::CppParser::AST::Function* native) CppSharp::Parser::AST::Function::Function(::CppSharp::CppParser::AST::Function* native)
: CppSharp::Parser::AST::Declaration((::CppSharp::CppParser::AST::Declaration*)native) : CppSharp::Parser::AST::DeclarationContext((::CppSharp::CppParser::AST::DeclarationContext*)native)
{ {
} }
@ -3478,7 +3478,7 @@ CppSharp::Parser::AST::Function::~Function()
} }
CppSharp::Parser::AST::Function::Function() CppSharp::Parser::AST::Function::Function()
: CppSharp::Parser::AST::Declaration((::CppSharp::CppParser::AST::Declaration*)nullptr) : CppSharp::Parser::AST::DeclarationContext((::CppSharp::CppParser::AST::DeclarationContext*)nullptr)
{ {
__ownsNativeInstance = true; __ownsNativeInstance = true;
NativePtr = new ::CppSharp::CppParser::AST::Function(); NativePtr = new ::CppSharp::CppParser::AST::Function();
@ -3505,7 +3505,7 @@ void CppSharp::Parser::AST::Function::ClearParameters()
} }
CppSharp::Parser::AST::Function::Function(CppSharp::Parser::AST::Function^ _0) CppSharp::Parser::AST::Function::Function(CppSharp::Parser::AST::Function^ _0)
: CppSharp::Parser::AST::Declaration((::CppSharp::CppParser::AST::Declaration*)nullptr) : CppSharp::Parser::AST::DeclarationContext((::CppSharp::CppParser::AST::DeclarationContext*)nullptr)
{ {
__ownsNativeInstance = true; __ownsNativeInstance = true;
if (ReferenceEquals(_0, nullptr)) if (ReferenceEquals(_0, nullptr))

2
src/CppParser/Bindings/CLI/AST.h

@ -2012,7 +2012,7 @@ namespace CppSharp
} }
}; };
public ref class Function : CppSharp::Parser::AST::Declaration public ref class Function : CppSharp::Parser::AST::DeclarationContext
{ {
public: public:

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

@ -7049,9 +7049,9 @@ namespace CppSharp
} }
} }
public unsafe partial class Function : global::CppSharp.Parser.AST.Declaration, IDisposable public unsafe partial class Function : global::CppSharp.Parser.AST.DeclarationContext, IDisposable
{ {
[StructLayout(LayoutKind.Explicit, Size = 200)] [StructLayout(LayoutKind.Explicit, Size = 324)]
public new partial struct __Internal public new partial struct __Internal
{ {
[FieldOffset(0)] [FieldOffset(0)]
@ -7112,57 +7112,90 @@ namespace CppSharp
internal global::System.IntPtr comment; internal global::System.IntPtr comment;
[FieldOffset(108)] [FieldOffset(108)]
internal global::Std.__1.Vector.__Internal Namespaces;
[FieldOffset(120)]
internal global::Std.__1.Vector.__Internal Enums;
[FieldOffset(132)]
internal global::Std.__1.Vector.__Internal Functions;
[FieldOffset(144)]
internal global::Std.__1.Vector.__Internal Classes;
[FieldOffset(156)]
internal global::Std.__1.Vector.__Internal Templates;
[FieldOffset(168)]
internal global::Std.__1.Vector.__Internal Typedefs;
[FieldOffset(180)]
internal global::Std.__1.Vector.__Internal TypeAliases;
[FieldOffset(192)]
internal global::Std.__1.Vector.__Internal Variables;
[FieldOffset(204)]
internal global::Std.__1.Vector.__Internal Friends;
[FieldOffset(216)]
internal global::Std.__1.Map.__Internal anonymous;
[FieldOffset(228)]
internal byte isAnonymous;
[FieldOffset(232)]
internal global::CppSharp.Parser.AST.QualifiedType.__Internal returnType; internal global::CppSharp.Parser.AST.QualifiedType.__Internal returnType;
[FieldOffset(116)] [FieldOffset(240)]
internal byte isReturnIndirect; internal byte isReturnIndirect;
[FieldOffset(117)] [FieldOffset(241)]
internal byte hasThisReturn; internal byte hasThisReturn;
[FieldOffset(118)] [FieldOffset(242)]
internal byte isConstExpr; internal byte isConstExpr;
[FieldOffset(119)] [FieldOffset(243)]
internal byte isVariadic; internal byte isVariadic;
[FieldOffset(120)] [FieldOffset(244)]
internal byte isInline; internal byte isInline;
[FieldOffset(121)] [FieldOffset(245)]
internal byte isPure; internal byte isPure;
[FieldOffset(122)] [FieldOffset(246)]
internal byte isDeleted; internal byte isDeleted;
[FieldOffset(124)] [FieldOffset(248)]
internal global::CppSharp.Parser.AST.FriendKind friendKind; internal global::CppSharp.Parser.AST.FriendKind friendKind;
[FieldOffset(128)] [FieldOffset(252)]
internal global::CppSharp.Parser.AST.CXXOperatorKind operatorKind; internal global::CppSharp.Parser.AST.CXXOperatorKind operatorKind;
[FieldOffset(132)] [FieldOffset(256)]
internal global::Std.__1.BasicString.__Internal mangled; internal global::Std.__1.BasicString.__Internal mangled;
[FieldOffset(144)] [FieldOffset(268)]
internal global::Std.__1.BasicString.__Internal signature; internal global::Std.__1.BasicString.__Internal signature;
[FieldOffset(156)] [FieldOffset(280)]
internal global::Std.__1.BasicString.__Internal body; internal global::Std.__1.BasicString.__Internal body;
[FieldOffset(168)] [FieldOffset(292)]
internal global::CppSharp.Parser.AST.CallingConvention callingConvention; internal global::CppSharp.Parser.AST.CallingConvention callingConvention;
[FieldOffset(172)] [FieldOffset(296)]
internal global::Std.__1.Vector.__Internal Parameters; internal global::Std.__1.Vector.__Internal Parameters;
[FieldOffset(184)] [FieldOffset(308)]
internal global::System.IntPtr specializationInfo; internal global::System.IntPtr specializationInfo;
[FieldOffset(188)] [FieldOffset(312)]
internal global::System.IntPtr instantiatedFrom; internal global::System.IntPtr instantiatedFrom;
[FieldOffset(192)] [FieldOffset(316)]
internal global::CppSharp.Parser.AST.QualifiedType.__Internal qualifiedType; internal global::CppSharp.Parser.AST.QualifiedType.__Internal qualifiedType;
[SuppressUnmanagedCodeSecurity] [SuppressUnmanagedCodeSecurity]
@ -7550,7 +7583,7 @@ namespace CppSharp
public unsafe partial class Method : global::CppSharp.Parser.AST.Function, IDisposable public unsafe partial class Method : global::CppSharp.Parser.AST.Function, IDisposable
{ {
[StructLayout(LayoutKind.Explicit, Size = 228)] [StructLayout(LayoutKind.Explicit, Size = 352)]
public new partial struct __Internal public new partial struct __Internal
{ {
[FieldOffset(0)] [FieldOffset(0)]
@ -7611,90 +7644,123 @@ namespace CppSharp
internal global::System.IntPtr comment; internal global::System.IntPtr comment;
[FieldOffset(108)] [FieldOffset(108)]
internal global::Std.__1.Vector.__Internal Namespaces;
[FieldOffset(120)]
internal global::Std.__1.Vector.__Internal Enums;
[FieldOffset(132)]
internal global::Std.__1.Vector.__Internal Functions;
[FieldOffset(144)]
internal global::Std.__1.Vector.__Internal Classes;
[FieldOffset(156)]
internal global::Std.__1.Vector.__Internal Templates;
[FieldOffset(168)]
internal global::Std.__1.Vector.__Internal Typedefs;
[FieldOffset(180)]
internal global::Std.__1.Vector.__Internal TypeAliases;
[FieldOffset(192)]
internal global::Std.__1.Vector.__Internal Variables;
[FieldOffset(204)]
internal global::Std.__1.Vector.__Internal Friends;
[FieldOffset(216)]
internal global::Std.__1.Map.__Internal anonymous;
[FieldOffset(228)]
internal byte isAnonymous;
[FieldOffset(232)]
internal global::CppSharp.Parser.AST.QualifiedType.__Internal returnType; internal global::CppSharp.Parser.AST.QualifiedType.__Internal returnType;
[FieldOffset(116)] [FieldOffset(240)]
internal byte isReturnIndirect; internal byte isReturnIndirect;
[FieldOffset(117)] [FieldOffset(241)]
internal byte hasThisReturn; internal byte hasThisReturn;
[FieldOffset(118)] [FieldOffset(242)]
internal byte isConstExpr; internal byte isConstExpr;
[FieldOffset(119)] [FieldOffset(243)]
internal byte isVariadic; internal byte isVariadic;
[FieldOffset(120)] [FieldOffset(244)]
internal byte isInline; internal byte isInline;
[FieldOffset(121)] [FieldOffset(245)]
internal byte isPure; internal byte isPure;
[FieldOffset(122)] [FieldOffset(246)]
internal byte isDeleted; internal byte isDeleted;
[FieldOffset(124)] [FieldOffset(248)]
internal global::CppSharp.Parser.AST.FriendKind friendKind; internal global::CppSharp.Parser.AST.FriendKind friendKind;
[FieldOffset(128)] [FieldOffset(252)]
internal global::CppSharp.Parser.AST.CXXOperatorKind operatorKind; internal global::CppSharp.Parser.AST.CXXOperatorKind operatorKind;
[FieldOffset(132)] [FieldOffset(256)]
internal global::Std.__1.BasicString.__Internal mangled; internal global::Std.__1.BasicString.__Internal mangled;
[FieldOffset(144)] [FieldOffset(268)]
internal global::Std.__1.BasicString.__Internal signature; internal global::Std.__1.BasicString.__Internal signature;
[FieldOffset(156)] [FieldOffset(280)]
internal global::Std.__1.BasicString.__Internal body; internal global::Std.__1.BasicString.__Internal body;
[FieldOffset(168)] [FieldOffset(292)]
internal global::CppSharp.Parser.AST.CallingConvention callingConvention; internal global::CppSharp.Parser.AST.CallingConvention callingConvention;
[FieldOffset(172)] [FieldOffset(296)]
internal global::Std.__1.Vector.__Internal Parameters; internal global::Std.__1.Vector.__Internal Parameters;
[FieldOffset(184)] [FieldOffset(308)]
internal global::System.IntPtr specializationInfo; internal global::System.IntPtr specializationInfo;
[FieldOffset(188)] [FieldOffset(312)]
internal global::System.IntPtr instantiatedFrom; internal global::System.IntPtr instantiatedFrom;
[FieldOffset(192)] [FieldOffset(316)]
internal global::CppSharp.Parser.AST.QualifiedType.__Internal qualifiedType; internal global::CppSharp.Parser.AST.QualifiedType.__Internal qualifiedType;
[FieldOffset(200)] [FieldOffset(324)]
internal byte isVirtual; internal byte isVirtual;
[FieldOffset(201)] [FieldOffset(325)]
internal byte isStatic; internal byte isStatic;
[FieldOffset(202)] [FieldOffset(326)]
internal byte isConst; internal byte isConst;
[FieldOffset(203)] [FieldOffset(327)]
internal byte isExplicit; internal byte isExplicit;
[FieldOffset(204)] [FieldOffset(328)]
internal byte isOverride; internal byte isOverride;
[FieldOffset(208)] [FieldOffset(332)]
internal global::CppSharp.Parser.AST.CXXMethodKind methodKind; internal global::CppSharp.Parser.AST.CXXMethodKind methodKind;
[FieldOffset(212)] [FieldOffset(336)]
internal byte isDefaultConstructor; internal byte isDefaultConstructor;
[FieldOffset(213)] [FieldOffset(337)]
internal byte isCopyConstructor; internal byte isCopyConstructor;
[FieldOffset(214)] [FieldOffset(338)]
internal byte isMoveConstructor; internal byte isMoveConstructor;
[FieldOffset(216)] [FieldOffset(340)]
internal global::CppSharp.Parser.AST.QualifiedType.__Internal conversionType; internal global::CppSharp.Parser.AST.QualifiedType.__Internal conversionType;
[FieldOffset(224)] [FieldOffset(348)]
internal global::CppSharp.Parser.AST.RefQualifierKind refQualifier; internal global::CppSharp.Parser.AST.RefQualifierKind refQualifier;
[SuppressUnmanagedCodeSecurity] [SuppressUnmanagedCodeSecurity]

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

@ -7049,9 +7049,9 @@ namespace CppSharp
} }
} }
public unsafe partial class Function : global::CppSharp.Parser.AST.Declaration, IDisposable public unsafe partial class Function : global::CppSharp.Parser.AST.DeclarationContext, IDisposable
{ {
[StructLayout(LayoutKind.Explicit, Size = 272)] [StructLayout(LayoutKind.Explicit, Size = 392)]
public new partial struct __Internal public new partial struct __Internal
{ {
[FieldOffset(0)] [FieldOffset(0)]
@ -7112,57 +7112,90 @@ namespace CppSharp
internal global::System.IntPtr comment; internal global::System.IntPtr comment;
[FieldOffset(144)] [FieldOffset(144)]
internal global::Std.Vector.__Internal Namespaces;
[FieldOffset(156)]
internal global::Std.Vector.__Internal Enums;
[FieldOffset(168)]
internal global::Std.Vector.__Internal Functions;
[FieldOffset(180)]
internal global::Std.Vector.__Internal Classes;
[FieldOffset(192)]
internal global::Std.Vector.__Internal Templates;
[FieldOffset(204)]
internal global::Std.Vector.__Internal Typedefs;
[FieldOffset(216)]
internal global::Std.Vector.__Internal TypeAliases;
[FieldOffset(228)]
internal global::Std.Vector.__Internal Variables;
[FieldOffset(240)]
internal global::Std.Vector.__Internal Friends;
[FieldOffset(252)]
internal global::Std.Map.__Internal anonymous;
[FieldOffset(260)]
internal byte isAnonymous;
[FieldOffset(264)]
internal global::CppSharp.Parser.AST.QualifiedType.__Internal returnType; internal global::CppSharp.Parser.AST.QualifiedType.__Internal returnType;
[FieldOffset(152)] [FieldOffset(272)]
internal byte isReturnIndirect; internal byte isReturnIndirect;
[FieldOffset(153)] [FieldOffset(273)]
internal byte hasThisReturn; internal byte hasThisReturn;
[FieldOffset(154)] [FieldOffset(274)]
internal byte isConstExpr; internal byte isConstExpr;
[FieldOffset(155)] [FieldOffset(275)]
internal byte isVariadic; internal byte isVariadic;
[FieldOffset(156)] [FieldOffset(276)]
internal byte isInline; internal byte isInline;
[FieldOffset(157)] [FieldOffset(277)]
internal byte isPure; internal byte isPure;
[FieldOffset(158)] [FieldOffset(278)]
internal byte isDeleted; internal byte isDeleted;
[FieldOffset(160)] [FieldOffset(280)]
internal global::CppSharp.Parser.AST.FriendKind friendKind; internal global::CppSharp.Parser.AST.FriendKind friendKind;
[FieldOffset(164)] [FieldOffset(284)]
internal global::CppSharp.Parser.AST.CXXOperatorKind operatorKind; internal global::CppSharp.Parser.AST.CXXOperatorKind operatorKind;
[FieldOffset(168)] [FieldOffset(288)]
internal global::Std.BasicString.__Internal mangled; internal global::Std.BasicString.__Internal mangled;
[FieldOffset(192)] [FieldOffset(312)]
internal global::Std.BasicString.__Internal signature; internal global::Std.BasicString.__Internal signature;
[FieldOffset(216)] [FieldOffset(336)]
internal global::Std.BasicString.__Internal body; internal global::Std.BasicString.__Internal body;
[FieldOffset(240)] [FieldOffset(360)]
internal global::CppSharp.Parser.AST.CallingConvention callingConvention; internal global::CppSharp.Parser.AST.CallingConvention callingConvention;
[FieldOffset(244)] [FieldOffset(364)]
internal global::Std.Vector.__Internal Parameters; internal global::Std.Vector.__Internal Parameters;
[FieldOffset(256)] [FieldOffset(376)]
internal global::System.IntPtr specializationInfo; internal global::System.IntPtr specializationInfo;
[FieldOffset(260)] [FieldOffset(380)]
internal global::System.IntPtr instantiatedFrom; internal global::System.IntPtr instantiatedFrom;
[FieldOffset(264)] [FieldOffset(384)]
internal global::CppSharp.Parser.AST.QualifiedType.__Internal qualifiedType; internal global::CppSharp.Parser.AST.QualifiedType.__Internal qualifiedType;
[SuppressUnmanagedCodeSecurity] [SuppressUnmanagedCodeSecurity]
@ -7550,7 +7583,7 @@ namespace CppSharp
public unsafe partial class Method : global::CppSharp.Parser.AST.Function, IDisposable public unsafe partial class Method : global::CppSharp.Parser.AST.Function, IDisposable
{ {
[StructLayout(LayoutKind.Explicit, Size = 300)] [StructLayout(LayoutKind.Explicit, Size = 420)]
public new partial struct __Internal public new partial struct __Internal
{ {
[FieldOffset(0)] [FieldOffset(0)]
@ -7611,90 +7644,123 @@ namespace CppSharp
internal global::System.IntPtr comment; internal global::System.IntPtr comment;
[FieldOffset(144)] [FieldOffset(144)]
internal global::Std.Vector.__Internal Namespaces;
[FieldOffset(156)]
internal global::Std.Vector.__Internal Enums;
[FieldOffset(168)]
internal global::Std.Vector.__Internal Functions;
[FieldOffset(180)]
internal global::Std.Vector.__Internal Classes;
[FieldOffset(192)]
internal global::Std.Vector.__Internal Templates;
[FieldOffset(204)]
internal global::Std.Vector.__Internal Typedefs;
[FieldOffset(216)]
internal global::Std.Vector.__Internal TypeAliases;
[FieldOffset(228)]
internal global::Std.Vector.__Internal Variables;
[FieldOffset(240)]
internal global::Std.Vector.__Internal Friends;
[FieldOffset(252)]
internal global::Std.Map.__Internal anonymous;
[FieldOffset(260)]
internal byte isAnonymous;
[FieldOffset(264)]
internal global::CppSharp.Parser.AST.QualifiedType.__Internal returnType; internal global::CppSharp.Parser.AST.QualifiedType.__Internal returnType;
[FieldOffset(152)] [FieldOffset(272)]
internal byte isReturnIndirect; internal byte isReturnIndirect;
[FieldOffset(153)] [FieldOffset(273)]
internal byte hasThisReturn; internal byte hasThisReturn;
[FieldOffset(154)] [FieldOffset(274)]
internal byte isConstExpr; internal byte isConstExpr;
[FieldOffset(155)] [FieldOffset(275)]
internal byte isVariadic; internal byte isVariadic;
[FieldOffset(156)] [FieldOffset(276)]
internal byte isInline; internal byte isInline;
[FieldOffset(157)] [FieldOffset(277)]
internal byte isPure; internal byte isPure;
[FieldOffset(158)] [FieldOffset(278)]
internal byte isDeleted; internal byte isDeleted;
[FieldOffset(160)] [FieldOffset(280)]
internal global::CppSharp.Parser.AST.FriendKind friendKind; internal global::CppSharp.Parser.AST.FriendKind friendKind;
[FieldOffset(164)] [FieldOffset(284)]
internal global::CppSharp.Parser.AST.CXXOperatorKind operatorKind; internal global::CppSharp.Parser.AST.CXXOperatorKind operatorKind;
[FieldOffset(168)] [FieldOffset(288)]
internal global::Std.BasicString.__Internal mangled; internal global::Std.BasicString.__Internal mangled;
[FieldOffset(192)] [FieldOffset(312)]
internal global::Std.BasicString.__Internal signature; internal global::Std.BasicString.__Internal signature;
[FieldOffset(216)] [FieldOffset(336)]
internal global::Std.BasicString.__Internal body; internal global::Std.BasicString.__Internal body;
[FieldOffset(240)] [FieldOffset(360)]
internal global::CppSharp.Parser.AST.CallingConvention callingConvention; internal global::CppSharp.Parser.AST.CallingConvention callingConvention;
[FieldOffset(244)] [FieldOffset(364)]
internal global::Std.Vector.__Internal Parameters; internal global::Std.Vector.__Internal Parameters;
[FieldOffset(256)] [FieldOffset(376)]
internal global::System.IntPtr specializationInfo; internal global::System.IntPtr specializationInfo;
[FieldOffset(260)] [FieldOffset(380)]
internal global::System.IntPtr instantiatedFrom; internal global::System.IntPtr instantiatedFrom;
[FieldOffset(264)] [FieldOffset(384)]
internal global::CppSharp.Parser.AST.QualifiedType.__Internal qualifiedType; internal global::CppSharp.Parser.AST.QualifiedType.__Internal qualifiedType;
[FieldOffset(272)] [FieldOffset(392)]
internal byte isVirtual; internal byte isVirtual;
[FieldOffset(273)] [FieldOffset(393)]
internal byte isStatic; internal byte isStatic;
[FieldOffset(274)] [FieldOffset(394)]
internal byte isConst; internal byte isConst;
[FieldOffset(275)] [FieldOffset(395)]
internal byte isExplicit; internal byte isExplicit;
[FieldOffset(276)] [FieldOffset(396)]
internal byte isOverride; internal byte isOverride;
[FieldOffset(280)] [FieldOffset(400)]
internal global::CppSharp.Parser.AST.CXXMethodKind methodKind; internal global::CppSharp.Parser.AST.CXXMethodKind methodKind;
[FieldOffset(284)] [FieldOffset(404)]
internal byte isDefaultConstructor; internal byte isDefaultConstructor;
[FieldOffset(285)] [FieldOffset(405)]
internal byte isCopyConstructor; internal byte isCopyConstructor;
[FieldOffset(286)] [FieldOffset(406)]
internal byte isMoveConstructor; internal byte isMoveConstructor;
[FieldOffset(288)] [FieldOffset(408)]
internal global::CppSharp.Parser.AST.QualifiedType.__Internal conversionType; internal global::CppSharp.Parser.AST.QualifiedType.__Internal conversionType;
[FieldOffset(296)] [FieldOffset(416)]
internal global::CppSharp.Parser.AST.RefQualifierKind refQualifier; internal global::CppSharp.Parser.AST.RefQualifierKind refQualifier;
[SuppressUnmanagedCodeSecurity] [SuppressUnmanagedCodeSecurity]

50
src/CppParser/Bindings/CSharp/i686-pc-win32-msvc/Std.cs

@ -205,91 +205,84 @@ namespace Std
} }
[StructLayout(LayoutKind.Explicit, Size = 12)] [StructLayout(LayoutKind.Explicit, Size = 12)]
public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_Parameter___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1 public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_Template___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1
{ {
[FieldOffset(0)] [FieldOffset(0)]
internal global::Std.VectorVal.__Internal _Myval2; internal global::Std.VectorVal.__Internal _Myval2;
} }
[StructLayout(LayoutKind.Explicit, Size = 12)] [StructLayout(LayoutKind.Explicit, Size = 12)]
public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_FunctionTemplateSpecialization___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1 public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_TypedefDecl___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1
{ {
[FieldOffset(0)] [FieldOffset(0)]
internal global::Std.VectorVal.__Internal _Myval2; internal global::Std.VectorVal.__Internal _Myval2;
} }
[StructLayout(LayoutKind.Explicit, Size = 12)] [StructLayout(LayoutKind.Explicit, Size = 12)]
public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator____N_CppSharp_N_CppParser_N_AST_S_TemplateArgument___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1 public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_TypeAlias___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1
{ {
[FieldOffset(0)] [FieldOffset(0)]
internal global::Std.VectorVal.__Internal _Myval2; internal global::Std.VectorVal.__Internal _Myval2;
} }
[StructLayout(LayoutKind.Explicit, Size = 12)] [StructLayout(LayoutKind.Explicit, Size = 12)]
public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_Function___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1 public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_Variable___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1
{ {
[FieldOffset(0)] [FieldOffset(0)]
internal global::Std.VectorVal.__Internal _Myval2; internal global::Std.VectorVal.__Internal _Myval2;
} }
[StructLayout(LayoutKind.Explicit, Size = 12)] [StructLayout(LayoutKind.Explicit, Size = 12)]
public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_Template___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1 public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_Friend___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1
{ {
[FieldOffset(0)] [FieldOffset(0)]
internal global::Std.VectorVal.__Internal _Myval2; internal global::Std.VectorVal.__Internal _Myval2;
} }
[StructLayout(LayoutKind.Explicit, Size = 12)] [StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_TypedefDecl___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1 public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S_less____N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C___N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator____N_std_S__Tree_node____N_std_S_pair__1S1_____N_CppSharp_N_CppParser_N_AST_S_Declaration__v___N_std_S__Tree_val____N_std_S__Tree_simple_types__S8__Vb1_Vb1
{ {
[FieldOffset(0)] [FieldOffset(0)]
internal global::Std.VectorVal.__Internal _Myval2; internal global::Std.CompressedPair.__Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator____N_std_S__Tree_node____N_std_S_pair__1__N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C____N_CppSharp_N_CppParser_N_AST_S_Declaration__v___N_std_S__Tree_val____N_std_S__Tree_simple_types__S3__Vb1 _Myval2;
} }
[StructLayout(LayoutKind.Explicit, Size = 12)] [StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_TypeAlias___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1 public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator____N_std_S__Tree_node____N_std_S_pair__1__N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C____N_CppSharp_N_CppParser_N_AST_S_Declaration__v___N_std_S__Tree_val____N_std_S__Tree_simple_types__S3__Vb1
{ {
[FieldOffset(0)] [FieldOffset(0)]
internal global::Std.VectorVal.__Internal _Myval2; internal global::Std.TreeVal.__Internal _Myval2;
} }
[StructLayout(LayoutKind.Explicit, Size = 12)] [StructLayout(LayoutKind.Explicit, Size = 12)]
public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_Variable___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1 public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_BaseClassSpecifier___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1
{ {
[FieldOffset(0)] [FieldOffset(0)]
internal global::Std.VectorVal.__Internal _Myval2; internal global::Std.VectorVal.__Internal _Myval2;
} }
[StructLayout(LayoutKind.Explicit, Size = 12)] [StructLayout(LayoutKind.Explicit, Size = 12)]
public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_Friend___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1 public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_Field___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1
{ {
[FieldOffset(0)] [FieldOffset(0)]
internal global::Std.VectorVal.__Internal _Myval2; internal global::Std.VectorVal.__Internal _Myval2;
} }
[StructLayout(LayoutKind.Explicit, Size = 8)] [StructLayout(LayoutKind.Explicit, Size = 12)]
public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S_less____N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C___N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator____N_std_S__Tree_node____N_std_S_pair__1S1_____N_CppSharp_N_CppParser_N_AST_S_Declaration__v___N_std_S__Tree_val____N_std_S__Tree_simple_types__S8__Vb1_Vb1 public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_Parameter___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1
{
[FieldOffset(0)]
internal global::Std.CompressedPair.__Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator____N_std_S__Tree_node____N_std_S_pair__1__N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C____N_CppSharp_N_CppParser_N_AST_S_Declaration__v___N_std_S__Tree_val____N_std_S__Tree_simple_types__S3__Vb1 _Myval2;
}
[StructLayout(LayoutKind.Explicit, Size = 8)]
public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator____N_std_S__Tree_node____N_std_S_pair__1__N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C____N_CppSharp_N_CppParser_N_AST_S_Declaration__v___N_std_S__Tree_val____N_std_S__Tree_simple_types__S3__Vb1
{ {
[FieldOffset(0)] [FieldOffset(0)]
internal global::Std.TreeVal.__Internal _Myval2; internal global::Std.VectorVal.__Internal _Myval2;
} }
[StructLayout(LayoutKind.Explicit, Size = 12)] [StructLayout(LayoutKind.Explicit, Size = 12)]
public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_BaseClassSpecifier___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1 public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_FunctionTemplateSpecialization___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1
{ {
[FieldOffset(0)] [FieldOffset(0)]
internal global::Std.VectorVal.__Internal _Myval2; internal global::Std.VectorVal.__Internal _Myval2;
} }
[StructLayout(LayoutKind.Explicit, Size = 12)] [StructLayout(LayoutKind.Explicit, Size = 12)]
public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_Field___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1 public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator____N_CppSharp_N_CppParser_N_AST_S_TemplateArgument___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1
{ {
[FieldOffset(0)] [FieldOffset(0)]
internal global::Std.VectorVal.__Internal _Myval2; internal global::Std.VectorVal.__Internal _Myval2;
@ -344,6 +337,13 @@ namespace Std
internal global::Std.VectorVal.__Internal _Myval2; internal global::Std.VectorVal.__Internal _Myval2;
} }
[StructLayout(LayoutKind.Explicit, Size = 12)]
public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_Function___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1
{
[FieldOffset(0)]
internal global::Std.VectorVal.__Internal _Myval2;
}
[StructLayout(LayoutKind.Explicit, Size = 12)] [StructLayout(LayoutKind.Explicit, Size = 12)]
public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_Enumeration_S_Item___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1 public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_Enumeration_S_Item___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1
{ {

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

@ -7048,9 +7048,9 @@ namespace CppSharp
} }
} }
public unsafe partial class Function : global::CppSharp.Parser.AST.Declaration, IDisposable public unsafe partial class Function : global::CppSharp.Parser.AST.DeclarationContext, IDisposable
{ {
[StructLayout(LayoutKind.Explicit, Size = 368)] [StructLayout(LayoutKind.Explicit, Size = 616)]
public new partial struct __Internal public new partial struct __Internal
{ {
[FieldOffset(0)] [FieldOffset(0)]
@ -7111,57 +7111,90 @@ namespace CppSharp
internal global::System.IntPtr comment; internal global::System.IntPtr comment;
[FieldOffset(200)] [FieldOffset(200)]
internal global::Std.__1.Vector.__Internal Namespaces;
[FieldOffset(224)]
internal global::Std.__1.Vector.__Internal Enums;
[FieldOffset(248)]
internal global::Std.__1.Vector.__Internal Functions;
[FieldOffset(272)]
internal global::Std.__1.Vector.__Internal Classes;
[FieldOffset(296)]
internal global::Std.__1.Vector.__Internal Templates;
[FieldOffset(320)]
internal global::Std.__1.Vector.__Internal Typedefs;
[FieldOffset(344)]
internal global::Std.__1.Vector.__Internal TypeAliases;
[FieldOffset(368)]
internal global::Std.__1.Vector.__Internal Variables;
[FieldOffset(392)]
internal global::Std.__1.Vector.__Internal Friends;
[FieldOffset(416)]
internal global::Std.__1.Map.__Internal anonymous;
[FieldOffset(440)]
internal byte isAnonymous;
[FieldOffset(448)]
internal global::CppSharp.Parser.AST.QualifiedType.__Internal returnType; internal global::CppSharp.Parser.AST.QualifiedType.__Internal returnType;
[FieldOffset(216)] [FieldOffset(464)]
internal byte isReturnIndirect; internal byte isReturnIndirect;
[FieldOffset(217)] [FieldOffset(465)]
internal byte hasThisReturn; internal byte hasThisReturn;
[FieldOffset(218)] [FieldOffset(466)]
internal byte isConstExpr; internal byte isConstExpr;
[FieldOffset(219)] [FieldOffset(467)]
internal byte isVariadic; internal byte isVariadic;
[FieldOffset(220)] [FieldOffset(468)]
internal byte isInline; internal byte isInline;
[FieldOffset(221)] [FieldOffset(469)]
internal byte isPure; internal byte isPure;
[FieldOffset(222)] [FieldOffset(470)]
internal byte isDeleted; internal byte isDeleted;
[FieldOffset(224)] [FieldOffset(472)]
internal global::CppSharp.Parser.AST.FriendKind friendKind; internal global::CppSharp.Parser.AST.FriendKind friendKind;
[FieldOffset(228)] [FieldOffset(476)]
internal global::CppSharp.Parser.AST.CXXOperatorKind operatorKind; internal global::CppSharp.Parser.AST.CXXOperatorKind operatorKind;
[FieldOffset(232)] [FieldOffset(480)]
internal global::Std.__1.BasicString.__Internal mangled; internal global::Std.__1.BasicString.__Internal mangled;
[FieldOffset(256)] [FieldOffset(504)]
internal global::Std.__1.BasicString.__Internal signature; internal global::Std.__1.BasicString.__Internal signature;
[FieldOffset(280)] [FieldOffset(528)]
internal global::Std.__1.BasicString.__Internal body; internal global::Std.__1.BasicString.__Internal body;
[FieldOffset(304)] [FieldOffset(552)]
internal global::CppSharp.Parser.AST.CallingConvention callingConvention; internal global::CppSharp.Parser.AST.CallingConvention callingConvention;
[FieldOffset(312)] [FieldOffset(560)]
internal global::Std.__1.Vector.__Internal Parameters; internal global::Std.__1.Vector.__Internal Parameters;
[FieldOffset(336)] [FieldOffset(584)]
internal global::System.IntPtr specializationInfo; internal global::System.IntPtr specializationInfo;
[FieldOffset(344)] [FieldOffset(592)]
internal global::System.IntPtr instantiatedFrom; internal global::System.IntPtr instantiatedFrom;
[FieldOffset(352)] [FieldOffset(600)]
internal global::CppSharp.Parser.AST.QualifiedType.__Internal qualifiedType; internal global::CppSharp.Parser.AST.QualifiedType.__Internal qualifiedType;
[SuppressUnmanagedCodeSecurity] [SuppressUnmanagedCodeSecurity]
@ -7549,7 +7582,7 @@ namespace CppSharp
public unsafe partial class Method : global::CppSharp.Parser.AST.Function, IDisposable public unsafe partial class Method : global::CppSharp.Parser.AST.Function, IDisposable
{ {
[StructLayout(LayoutKind.Explicit, Size = 408)] [StructLayout(LayoutKind.Explicit, Size = 656)]
public new partial struct __Internal public new partial struct __Internal
{ {
[FieldOffset(0)] [FieldOffset(0)]
@ -7610,90 +7643,123 @@ namespace CppSharp
internal global::System.IntPtr comment; internal global::System.IntPtr comment;
[FieldOffset(200)] [FieldOffset(200)]
internal global::Std.__1.Vector.__Internal Namespaces;
[FieldOffset(224)]
internal global::Std.__1.Vector.__Internal Enums;
[FieldOffset(248)]
internal global::Std.__1.Vector.__Internal Functions;
[FieldOffset(272)]
internal global::Std.__1.Vector.__Internal Classes;
[FieldOffset(296)]
internal global::Std.__1.Vector.__Internal Templates;
[FieldOffset(320)]
internal global::Std.__1.Vector.__Internal Typedefs;
[FieldOffset(344)]
internal global::Std.__1.Vector.__Internal TypeAliases;
[FieldOffset(368)]
internal global::Std.__1.Vector.__Internal Variables;
[FieldOffset(392)]
internal global::Std.__1.Vector.__Internal Friends;
[FieldOffset(416)]
internal global::Std.__1.Map.__Internal anonymous;
[FieldOffset(440)]
internal byte isAnonymous;
[FieldOffset(448)]
internal global::CppSharp.Parser.AST.QualifiedType.__Internal returnType; internal global::CppSharp.Parser.AST.QualifiedType.__Internal returnType;
[FieldOffset(216)] [FieldOffset(464)]
internal byte isReturnIndirect; internal byte isReturnIndirect;
[FieldOffset(217)] [FieldOffset(465)]
internal byte hasThisReturn; internal byte hasThisReturn;
[FieldOffset(218)] [FieldOffset(466)]
internal byte isConstExpr; internal byte isConstExpr;
[FieldOffset(219)] [FieldOffset(467)]
internal byte isVariadic; internal byte isVariadic;
[FieldOffset(220)] [FieldOffset(468)]
internal byte isInline; internal byte isInline;
[FieldOffset(221)] [FieldOffset(469)]
internal byte isPure; internal byte isPure;
[FieldOffset(222)] [FieldOffset(470)]
internal byte isDeleted; internal byte isDeleted;
[FieldOffset(224)] [FieldOffset(472)]
internal global::CppSharp.Parser.AST.FriendKind friendKind; internal global::CppSharp.Parser.AST.FriendKind friendKind;
[FieldOffset(228)] [FieldOffset(476)]
internal global::CppSharp.Parser.AST.CXXOperatorKind operatorKind; internal global::CppSharp.Parser.AST.CXXOperatorKind operatorKind;
[FieldOffset(232)] [FieldOffset(480)]
internal global::Std.__1.BasicString.__Internal mangled; internal global::Std.__1.BasicString.__Internal mangled;
[FieldOffset(256)] [FieldOffset(504)]
internal global::Std.__1.BasicString.__Internal signature; internal global::Std.__1.BasicString.__Internal signature;
[FieldOffset(280)] [FieldOffset(528)]
internal global::Std.__1.BasicString.__Internal body; internal global::Std.__1.BasicString.__Internal body;
[FieldOffset(304)] [FieldOffset(552)]
internal global::CppSharp.Parser.AST.CallingConvention callingConvention; internal global::CppSharp.Parser.AST.CallingConvention callingConvention;
[FieldOffset(312)] [FieldOffset(560)]
internal global::Std.__1.Vector.__Internal Parameters; internal global::Std.__1.Vector.__Internal Parameters;
[FieldOffset(336)] [FieldOffset(584)]
internal global::System.IntPtr specializationInfo; internal global::System.IntPtr specializationInfo;
[FieldOffset(344)] [FieldOffset(592)]
internal global::System.IntPtr instantiatedFrom; internal global::System.IntPtr instantiatedFrom;
[FieldOffset(352)] [FieldOffset(600)]
internal global::CppSharp.Parser.AST.QualifiedType.__Internal qualifiedType; internal global::CppSharp.Parser.AST.QualifiedType.__Internal qualifiedType;
[FieldOffset(368)] [FieldOffset(616)]
internal byte isVirtual; internal byte isVirtual;
[FieldOffset(369)] [FieldOffset(617)]
internal byte isStatic; internal byte isStatic;
[FieldOffset(370)] [FieldOffset(618)]
internal byte isConst; internal byte isConst;
[FieldOffset(371)] [FieldOffset(619)]
internal byte isExplicit; internal byte isExplicit;
[FieldOffset(372)] [FieldOffset(620)]
internal byte isOverride; internal byte isOverride;
[FieldOffset(376)] [FieldOffset(624)]
internal global::CppSharp.Parser.AST.CXXMethodKind methodKind; internal global::CppSharp.Parser.AST.CXXMethodKind methodKind;
[FieldOffset(380)] [FieldOffset(628)]
internal byte isDefaultConstructor; internal byte isDefaultConstructor;
[FieldOffset(381)] [FieldOffset(629)]
internal byte isCopyConstructor; internal byte isCopyConstructor;
[FieldOffset(382)] [FieldOffset(630)]
internal byte isMoveConstructor; internal byte isMoveConstructor;
[FieldOffset(384)] [FieldOffset(632)]
internal global::CppSharp.Parser.AST.QualifiedType.__Internal conversionType; internal global::CppSharp.Parser.AST.QualifiedType.__Internal conversionType;
[FieldOffset(400)] [FieldOffset(648)]
internal global::CppSharp.Parser.AST.RefQualifierKind refQualifier; internal global::CppSharp.Parser.AST.RefQualifierKind refQualifier;
[SuppressUnmanagedCodeSecurity] [SuppressUnmanagedCodeSecurity]

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

@ -7048,9 +7048,9 @@ namespace CppSharp
} }
} }
public unsafe partial class Function : global::CppSharp.Parser.AST.Declaration, IDisposable public unsafe partial class Function : global::CppSharp.Parser.AST.DeclarationContext, IDisposable
{ {
[StructLayout(LayoutKind.Explicit, Size = 416)] [StructLayout(LayoutKind.Explicit, Size = 688)]
public new partial struct __Internal public new partial struct __Internal
{ {
[FieldOffset(0)] [FieldOffset(0)]
@ -7111,57 +7111,90 @@ namespace CppSharp
internal global::System.IntPtr comment; internal global::System.IntPtr comment;
[FieldOffset(224)] [FieldOffset(224)]
internal global::Std.Vector.__Internal Namespaces;
[FieldOffset(248)]
internal global::Std.Vector.__Internal Enums;
[FieldOffset(272)]
internal global::Std.Vector.__Internal Functions;
[FieldOffset(296)]
internal global::Std.Vector.__Internal Classes;
[FieldOffset(320)]
internal global::Std.Vector.__Internal Templates;
[FieldOffset(344)]
internal global::Std.Vector.__Internal Typedefs;
[FieldOffset(368)]
internal global::Std.Vector.__Internal TypeAliases;
[FieldOffset(392)]
internal global::Std.Vector.__Internal Variables;
[FieldOffset(416)]
internal global::Std.Vector.__Internal Friends;
[FieldOffset(440)]
internal global::Std.Map.__Internal anonymous;
[FieldOffset(488)]
internal byte isAnonymous;
[FieldOffset(496)]
internal global::CppSharp.Parser.AST.QualifiedType.__Internal returnType; internal global::CppSharp.Parser.AST.QualifiedType.__Internal returnType;
[FieldOffset(240)] [FieldOffset(512)]
internal byte isReturnIndirect; internal byte isReturnIndirect;
[FieldOffset(241)] [FieldOffset(513)]
internal byte hasThisReturn; internal byte hasThisReturn;
[FieldOffset(242)] [FieldOffset(514)]
internal byte isConstExpr; internal byte isConstExpr;
[FieldOffset(243)] [FieldOffset(515)]
internal byte isVariadic; internal byte isVariadic;
[FieldOffset(244)] [FieldOffset(516)]
internal byte isInline; internal byte isInline;
[FieldOffset(245)] [FieldOffset(517)]
internal byte isPure; internal byte isPure;
[FieldOffset(246)] [FieldOffset(518)]
internal byte isDeleted; internal byte isDeleted;
[FieldOffset(248)] [FieldOffset(520)]
internal global::CppSharp.Parser.AST.FriendKind friendKind; internal global::CppSharp.Parser.AST.FriendKind friendKind;
[FieldOffset(252)] [FieldOffset(524)]
internal global::CppSharp.Parser.AST.CXXOperatorKind operatorKind; internal global::CppSharp.Parser.AST.CXXOperatorKind operatorKind;
[FieldOffset(256)] [FieldOffset(528)]
internal global::Std.Cxx11.BasicString.__Internal mangled; internal global::Std.Cxx11.BasicString.__Internal mangled;
[FieldOffset(288)] [FieldOffset(560)]
internal global::Std.Cxx11.BasicString.__Internal signature; internal global::Std.Cxx11.BasicString.__Internal signature;
[FieldOffset(320)] [FieldOffset(592)]
internal global::Std.Cxx11.BasicString.__Internal body; internal global::Std.Cxx11.BasicString.__Internal body;
[FieldOffset(352)] [FieldOffset(624)]
internal global::CppSharp.Parser.AST.CallingConvention callingConvention; internal global::CppSharp.Parser.AST.CallingConvention callingConvention;
[FieldOffset(360)] [FieldOffset(632)]
internal global::Std.Vector.__Internal Parameters; internal global::Std.Vector.__Internal Parameters;
[FieldOffset(384)] [FieldOffset(656)]
internal global::System.IntPtr specializationInfo; internal global::System.IntPtr specializationInfo;
[FieldOffset(392)] [FieldOffset(664)]
internal global::System.IntPtr instantiatedFrom; internal global::System.IntPtr instantiatedFrom;
[FieldOffset(400)] [FieldOffset(672)]
internal global::CppSharp.Parser.AST.QualifiedType.__Internal qualifiedType; internal global::CppSharp.Parser.AST.QualifiedType.__Internal qualifiedType;
[SuppressUnmanagedCodeSecurity] [SuppressUnmanagedCodeSecurity]
@ -7549,7 +7582,7 @@ namespace CppSharp
public unsafe partial class Method : global::CppSharp.Parser.AST.Function, IDisposable public unsafe partial class Method : global::CppSharp.Parser.AST.Function, IDisposable
{ {
[StructLayout(LayoutKind.Explicit, Size = 456)] [StructLayout(LayoutKind.Explicit, Size = 728)]
public new partial struct __Internal public new partial struct __Internal
{ {
[FieldOffset(0)] [FieldOffset(0)]
@ -7610,90 +7643,123 @@ namespace CppSharp
internal global::System.IntPtr comment; internal global::System.IntPtr comment;
[FieldOffset(224)] [FieldOffset(224)]
internal global::Std.Vector.__Internal Namespaces;
[FieldOffset(248)]
internal global::Std.Vector.__Internal Enums;
[FieldOffset(272)]
internal global::Std.Vector.__Internal Functions;
[FieldOffset(296)]
internal global::Std.Vector.__Internal Classes;
[FieldOffset(320)]
internal global::Std.Vector.__Internal Templates;
[FieldOffset(344)]
internal global::Std.Vector.__Internal Typedefs;
[FieldOffset(368)]
internal global::Std.Vector.__Internal TypeAliases;
[FieldOffset(392)]
internal global::Std.Vector.__Internal Variables;
[FieldOffset(416)]
internal global::Std.Vector.__Internal Friends;
[FieldOffset(440)]
internal global::Std.Map.__Internal anonymous;
[FieldOffset(488)]
internal byte isAnonymous;
[FieldOffset(496)]
internal global::CppSharp.Parser.AST.QualifiedType.__Internal returnType; internal global::CppSharp.Parser.AST.QualifiedType.__Internal returnType;
[FieldOffset(240)] [FieldOffset(512)]
internal byte isReturnIndirect; internal byte isReturnIndirect;
[FieldOffset(241)] [FieldOffset(513)]
internal byte hasThisReturn; internal byte hasThisReturn;
[FieldOffset(242)] [FieldOffset(514)]
internal byte isConstExpr; internal byte isConstExpr;
[FieldOffset(243)] [FieldOffset(515)]
internal byte isVariadic; internal byte isVariadic;
[FieldOffset(244)] [FieldOffset(516)]
internal byte isInline; internal byte isInline;
[FieldOffset(245)] [FieldOffset(517)]
internal byte isPure; internal byte isPure;
[FieldOffset(246)] [FieldOffset(518)]
internal byte isDeleted; internal byte isDeleted;
[FieldOffset(248)] [FieldOffset(520)]
internal global::CppSharp.Parser.AST.FriendKind friendKind; internal global::CppSharp.Parser.AST.FriendKind friendKind;
[FieldOffset(252)] [FieldOffset(524)]
internal global::CppSharp.Parser.AST.CXXOperatorKind operatorKind; internal global::CppSharp.Parser.AST.CXXOperatorKind operatorKind;
[FieldOffset(256)] [FieldOffset(528)]
internal global::Std.Cxx11.BasicString.__Internal mangled; internal global::Std.Cxx11.BasicString.__Internal mangled;
[FieldOffset(288)] [FieldOffset(560)]
internal global::Std.Cxx11.BasicString.__Internal signature; internal global::Std.Cxx11.BasicString.__Internal signature;
[FieldOffset(320)] [FieldOffset(592)]
internal global::Std.Cxx11.BasicString.__Internal body; internal global::Std.Cxx11.BasicString.__Internal body;
[FieldOffset(352)] [FieldOffset(624)]
internal global::CppSharp.Parser.AST.CallingConvention callingConvention; internal global::CppSharp.Parser.AST.CallingConvention callingConvention;
[FieldOffset(360)] [FieldOffset(632)]
internal global::Std.Vector.__Internal Parameters; internal global::Std.Vector.__Internal Parameters;
[FieldOffset(384)] [FieldOffset(656)]
internal global::System.IntPtr specializationInfo; internal global::System.IntPtr specializationInfo;
[FieldOffset(392)] [FieldOffset(664)]
internal global::System.IntPtr instantiatedFrom; internal global::System.IntPtr instantiatedFrom;
[FieldOffset(400)] [FieldOffset(672)]
internal global::CppSharp.Parser.AST.QualifiedType.__Internal qualifiedType; internal global::CppSharp.Parser.AST.QualifiedType.__Internal qualifiedType;
[FieldOffset(416)] [FieldOffset(688)]
internal byte isVirtual; internal byte isVirtual;
[FieldOffset(417)] [FieldOffset(689)]
internal byte isStatic; internal byte isStatic;
[FieldOffset(418)] [FieldOffset(690)]
internal byte isConst; internal byte isConst;
[FieldOffset(419)] [FieldOffset(691)]
internal byte isExplicit; internal byte isExplicit;
[FieldOffset(420)] [FieldOffset(692)]
internal byte isOverride; internal byte isOverride;
[FieldOffset(424)] [FieldOffset(696)]
internal global::CppSharp.Parser.AST.CXXMethodKind methodKind; internal global::CppSharp.Parser.AST.CXXMethodKind methodKind;
[FieldOffset(428)] [FieldOffset(700)]
internal byte isDefaultConstructor; internal byte isDefaultConstructor;
[FieldOffset(429)] [FieldOffset(701)]
internal byte isCopyConstructor; internal byte isCopyConstructor;
[FieldOffset(430)] [FieldOffset(702)]
internal byte isMoveConstructor; internal byte isMoveConstructor;
[FieldOffset(432)] [FieldOffset(704)]
internal global::CppSharp.Parser.AST.QualifiedType.__Internal conversionType; internal global::CppSharp.Parser.AST.QualifiedType.__Internal conversionType;
[FieldOffset(448)] [FieldOffset(720)]
internal global::CppSharp.Parser.AST.RefQualifierKind refQualifier; internal global::CppSharp.Parser.AST.RefQualifierKind refQualifier;
[SuppressUnmanagedCodeSecurity] [SuppressUnmanagedCodeSecurity]

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

@ -7048,9 +7048,9 @@ namespace CppSharp
} }
} }
public unsafe partial class Function : global::CppSharp.Parser.AST.Declaration, IDisposable public unsafe partial class Function : global::CppSharp.Parser.AST.DeclarationContext, IDisposable
{ {
[StructLayout(LayoutKind.Explicit, Size = 272)] [StructLayout(LayoutKind.Explicit, Size = 544)]
public new partial struct __Internal public new partial struct __Internal
{ {
[FieldOffset(0)] [FieldOffset(0)]
@ -7111,57 +7111,90 @@ namespace CppSharp
internal global::System.IntPtr comment; internal global::System.IntPtr comment;
[FieldOffset(152)] [FieldOffset(152)]
internal global::Std.Vector.__Internal Namespaces;
[FieldOffset(176)]
internal global::Std.Vector.__Internal Enums;
[FieldOffset(200)]
internal global::Std.Vector.__Internal Functions;
[FieldOffset(224)]
internal global::Std.Vector.__Internal Classes;
[FieldOffset(248)]
internal global::Std.Vector.__Internal Templates;
[FieldOffset(272)]
internal global::Std.Vector.__Internal Typedefs;
[FieldOffset(296)]
internal global::Std.Vector.__Internal TypeAliases;
[FieldOffset(320)]
internal global::Std.Vector.__Internal Variables;
[FieldOffset(344)]
internal global::Std.Vector.__Internal Friends;
[FieldOffset(368)]
internal global::Std.Map.__Internal anonymous;
[FieldOffset(416)]
internal byte isAnonymous;
[FieldOffset(424)]
internal global::CppSharp.Parser.AST.QualifiedType.__Internal returnType; internal global::CppSharp.Parser.AST.QualifiedType.__Internal returnType;
[FieldOffset(168)] [FieldOffset(440)]
internal byte isReturnIndirect; internal byte isReturnIndirect;
[FieldOffset(169)] [FieldOffset(441)]
internal byte hasThisReturn; internal byte hasThisReturn;
[FieldOffset(170)] [FieldOffset(442)]
internal byte isConstExpr; internal byte isConstExpr;
[FieldOffset(171)] [FieldOffset(443)]
internal byte isVariadic; internal byte isVariadic;
[FieldOffset(172)] [FieldOffset(444)]
internal byte isInline; internal byte isInline;
[FieldOffset(173)] [FieldOffset(445)]
internal byte isPure; internal byte isPure;
[FieldOffset(174)] [FieldOffset(446)]
internal byte isDeleted; internal byte isDeleted;
[FieldOffset(176)] [FieldOffset(448)]
internal global::CppSharp.Parser.AST.FriendKind friendKind; internal global::CppSharp.Parser.AST.FriendKind friendKind;
[FieldOffset(180)] [FieldOffset(452)]
internal global::CppSharp.Parser.AST.CXXOperatorKind operatorKind; internal global::CppSharp.Parser.AST.CXXOperatorKind operatorKind;
[FieldOffset(184)] [FieldOffset(456)]
internal global::Std.BasicString.__Internal mangled; internal global::Std.BasicString.__Internal mangled;
[FieldOffset(192)] [FieldOffset(464)]
internal global::Std.BasicString.__Internal signature; internal global::Std.BasicString.__Internal signature;
[FieldOffset(200)] [FieldOffset(472)]
internal global::Std.BasicString.__Internal body; internal global::Std.BasicString.__Internal body;
[FieldOffset(208)] [FieldOffset(480)]
internal global::CppSharp.Parser.AST.CallingConvention callingConvention; internal global::CppSharp.Parser.AST.CallingConvention callingConvention;
[FieldOffset(216)] [FieldOffset(488)]
internal global::Std.Vector.__Internal Parameters; internal global::Std.Vector.__Internal Parameters;
[FieldOffset(240)] [FieldOffset(512)]
internal global::System.IntPtr specializationInfo; internal global::System.IntPtr specializationInfo;
[FieldOffset(248)] [FieldOffset(520)]
internal global::System.IntPtr instantiatedFrom; internal global::System.IntPtr instantiatedFrom;
[FieldOffset(256)] [FieldOffset(528)]
internal global::CppSharp.Parser.AST.QualifiedType.__Internal qualifiedType; internal global::CppSharp.Parser.AST.QualifiedType.__Internal qualifiedType;
[SuppressUnmanagedCodeSecurity] [SuppressUnmanagedCodeSecurity]
@ -7549,7 +7582,7 @@ namespace CppSharp
public unsafe partial class Method : global::CppSharp.Parser.AST.Function, IDisposable public unsafe partial class Method : global::CppSharp.Parser.AST.Function, IDisposable
{ {
[StructLayout(LayoutKind.Explicit, Size = 312)] [StructLayout(LayoutKind.Explicit, Size = 584)]
public new partial struct __Internal public new partial struct __Internal
{ {
[FieldOffset(0)] [FieldOffset(0)]
@ -7610,90 +7643,123 @@ namespace CppSharp
internal global::System.IntPtr comment; internal global::System.IntPtr comment;
[FieldOffset(152)] [FieldOffset(152)]
internal global::Std.Vector.__Internal Namespaces;
[FieldOffset(176)]
internal global::Std.Vector.__Internal Enums;
[FieldOffset(200)]
internal global::Std.Vector.__Internal Functions;
[FieldOffset(224)]
internal global::Std.Vector.__Internal Classes;
[FieldOffset(248)]
internal global::Std.Vector.__Internal Templates;
[FieldOffset(272)]
internal global::Std.Vector.__Internal Typedefs;
[FieldOffset(296)]
internal global::Std.Vector.__Internal TypeAliases;
[FieldOffset(320)]
internal global::Std.Vector.__Internal Variables;
[FieldOffset(344)]
internal global::Std.Vector.__Internal Friends;
[FieldOffset(368)]
internal global::Std.Map.__Internal anonymous;
[FieldOffset(416)]
internal byte isAnonymous;
[FieldOffset(424)]
internal global::CppSharp.Parser.AST.QualifiedType.__Internal returnType; internal global::CppSharp.Parser.AST.QualifiedType.__Internal returnType;
[FieldOffset(168)] [FieldOffset(440)]
internal byte isReturnIndirect; internal byte isReturnIndirect;
[FieldOffset(169)] [FieldOffset(441)]
internal byte hasThisReturn; internal byte hasThisReturn;
[FieldOffset(170)] [FieldOffset(442)]
internal byte isConstExpr; internal byte isConstExpr;
[FieldOffset(171)] [FieldOffset(443)]
internal byte isVariadic; internal byte isVariadic;
[FieldOffset(172)] [FieldOffset(444)]
internal byte isInline; internal byte isInline;
[FieldOffset(173)] [FieldOffset(445)]
internal byte isPure; internal byte isPure;
[FieldOffset(174)] [FieldOffset(446)]
internal byte isDeleted; internal byte isDeleted;
[FieldOffset(176)] [FieldOffset(448)]
internal global::CppSharp.Parser.AST.FriendKind friendKind; internal global::CppSharp.Parser.AST.FriendKind friendKind;
[FieldOffset(180)] [FieldOffset(452)]
internal global::CppSharp.Parser.AST.CXXOperatorKind operatorKind; internal global::CppSharp.Parser.AST.CXXOperatorKind operatorKind;
[FieldOffset(184)] [FieldOffset(456)]
internal global::Std.BasicString.__Internal mangled; internal global::Std.BasicString.__Internal mangled;
[FieldOffset(192)] [FieldOffset(464)]
internal global::Std.BasicString.__Internal signature; internal global::Std.BasicString.__Internal signature;
[FieldOffset(200)] [FieldOffset(472)]
internal global::Std.BasicString.__Internal body; internal global::Std.BasicString.__Internal body;
[FieldOffset(208)] [FieldOffset(480)]
internal global::CppSharp.Parser.AST.CallingConvention callingConvention; internal global::CppSharp.Parser.AST.CallingConvention callingConvention;
[FieldOffset(216)] [FieldOffset(488)]
internal global::Std.Vector.__Internal Parameters; internal global::Std.Vector.__Internal Parameters;
[FieldOffset(240)] [FieldOffset(512)]
internal global::System.IntPtr specializationInfo; internal global::System.IntPtr specializationInfo;
[FieldOffset(248)] [FieldOffset(520)]
internal global::System.IntPtr instantiatedFrom; internal global::System.IntPtr instantiatedFrom;
[FieldOffset(256)] [FieldOffset(528)]
internal global::CppSharp.Parser.AST.QualifiedType.__Internal qualifiedType; internal global::CppSharp.Parser.AST.QualifiedType.__Internal qualifiedType;
[FieldOffset(272)] [FieldOffset(544)]
internal byte isVirtual; internal byte isVirtual;
[FieldOffset(273)] [FieldOffset(545)]
internal byte isStatic; internal byte isStatic;
[FieldOffset(274)] [FieldOffset(546)]
internal byte isConst; internal byte isConst;
[FieldOffset(275)] [FieldOffset(547)]
internal byte isExplicit; internal byte isExplicit;
[FieldOffset(276)] [FieldOffset(548)]
internal byte isOverride; internal byte isOverride;
[FieldOffset(280)] [FieldOffset(552)]
internal global::CppSharp.Parser.AST.CXXMethodKind methodKind; internal global::CppSharp.Parser.AST.CXXMethodKind methodKind;
[FieldOffset(284)] [FieldOffset(556)]
internal byte isDefaultConstructor; internal byte isDefaultConstructor;
[FieldOffset(285)] [FieldOffset(557)]
internal byte isCopyConstructor; internal byte isCopyConstructor;
[FieldOffset(286)] [FieldOffset(558)]
internal byte isMoveConstructor; internal byte isMoveConstructor;
[FieldOffset(288)] [FieldOffset(560)]
internal global::CppSharp.Parser.AST.QualifiedType.__Internal conversionType; internal global::CppSharp.Parser.AST.QualifiedType.__Internal conversionType;
[FieldOffset(304)] [FieldOffset(576)]
internal global::CppSharp.Parser.AST.RefQualifierKind refQualifier; internal global::CppSharp.Parser.AST.RefQualifierKind refQualifier;
[SuppressUnmanagedCodeSecurity] [SuppressUnmanagedCodeSecurity]

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

@ -7049,9 +7049,9 @@ namespace CppSharp
} }
} }
public unsafe partial class Function : global::CppSharp.Parser.AST.Declaration, IDisposable public unsafe partial class Function : global::CppSharp.Parser.AST.DeclarationContext, IDisposable
{ {
[StructLayout(LayoutKind.Explicit, Size = 416)] [StructLayout(LayoutKind.Explicit, Size = 656)]
public new partial struct __Internal public new partial struct __Internal
{ {
[FieldOffset(0)] [FieldOffset(0)]
@ -7112,57 +7112,90 @@ namespace CppSharp
internal global::System.IntPtr comment; internal global::System.IntPtr comment;
[FieldOffset(224)] [FieldOffset(224)]
internal global::Std.Vector.__Internal Namespaces;
[FieldOffset(248)]
internal global::Std.Vector.__Internal Enums;
[FieldOffset(272)]
internal global::Std.Vector.__Internal Functions;
[FieldOffset(296)]
internal global::Std.Vector.__Internal Classes;
[FieldOffset(320)]
internal global::Std.Vector.__Internal Templates;
[FieldOffset(344)]
internal global::Std.Vector.__Internal Typedefs;
[FieldOffset(368)]
internal global::Std.Vector.__Internal TypeAliases;
[FieldOffset(392)]
internal global::Std.Vector.__Internal Variables;
[FieldOffset(416)]
internal global::Std.Vector.__Internal Friends;
[FieldOffset(440)]
internal global::Std.Map.__Internal anonymous;
[FieldOffset(456)]
internal byte isAnonymous;
[FieldOffset(464)]
internal global::CppSharp.Parser.AST.QualifiedType.__Internal returnType; internal global::CppSharp.Parser.AST.QualifiedType.__Internal returnType;
[FieldOffset(240)] [FieldOffset(480)]
internal byte isReturnIndirect; internal byte isReturnIndirect;
[FieldOffset(241)] [FieldOffset(481)]
internal byte hasThisReturn; internal byte hasThisReturn;
[FieldOffset(242)] [FieldOffset(482)]
internal byte isConstExpr; internal byte isConstExpr;
[FieldOffset(243)] [FieldOffset(483)]
internal byte isVariadic; internal byte isVariadic;
[FieldOffset(244)] [FieldOffset(484)]
internal byte isInline; internal byte isInline;
[FieldOffset(245)] [FieldOffset(485)]
internal byte isPure; internal byte isPure;
[FieldOffset(246)] [FieldOffset(486)]
internal byte isDeleted; internal byte isDeleted;
[FieldOffset(248)] [FieldOffset(488)]
internal global::CppSharp.Parser.AST.FriendKind friendKind; internal global::CppSharp.Parser.AST.FriendKind friendKind;
[FieldOffset(252)] [FieldOffset(492)]
internal global::CppSharp.Parser.AST.CXXOperatorKind operatorKind; internal global::CppSharp.Parser.AST.CXXOperatorKind operatorKind;
[FieldOffset(256)] [FieldOffset(496)]
internal global::Std.BasicString.__Internal mangled; internal global::Std.BasicString.__Internal mangled;
[FieldOffset(288)] [FieldOffset(528)]
internal global::Std.BasicString.__Internal signature; internal global::Std.BasicString.__Internal signature;
[FieldOffset(320)] [FieldOffset(560)]
internal global::Std.BasicString.__Internal body; internal global::Std.BasicString.__Internal body;
[FieldOffset(352)] [FieldOffset(592)]
internal global::CppSharp.Parser.AST.CallingConvention callingConvention; internal global::CppSharp.Parser.AST.CallingConvention callingConvention;
[FieldOffset(360)] [FieldOffset(600)]
internal global::Std.Vector.__Internal Parameters; internal global::Std.Vector.__Internal Parameters;
[FieldOffset(384)] [FieldOffset(624)]
internal global::System.IntPtr specializationInfo; internal global::System.IntPtr specializationInfo;
[FieldOffset(392)] [FieldOffset(632)]
internal global::System.IntPtr instantiatedFrom; internal global::System.IntPtr instantiatedFrom;
[FieldOffset(400)] [FieldOffset(640)]
internal global::CppSharp.Parser.AST.QualifiedType.__Internal qualifiedType; internal global::CppSharp.Parser.AST.QualifiedType.__Internal qualifiedType;
[SuppressUnmanagedCodeSecurity] [SuppressUnmanagedCodeSecurity]
@ -7550,7 +7583,7 @@ namespace CppSharp
public unsafe partial class Method : global::CppSharp.Parser.AST.Function, IDisposable public unsafe partial class Method : global::CppSharp.Parser.AST.Function, IDisposable
{ {
[StructLayout(LayoutKind.Explicit, Size = 456)] [StructLayout(LayoutKind.Explicit, Size = 696)]
public new partial struct __Internal public new partial struct __Internal
{ {
[FieldOffset(0)] [FieldOffset(0)]
@ -7611,90 +7644,123 @@ namespace CppSharp
internal global::System.IntPtr comment; internal global::System.IntPtr comment;
[FieldOffset(224)] [FieldOffset(224)]
internal global::Std.Vector.__Internal Namespaces;
[FieldOffset(248)]
internal global::Std.Vector.__Internal Enums;
[FieldOffset(272)]
internal global::Std.Vector.__Internal Functions;
[FieldOffset(296)]
internal global::Std.Vector.__Internal Classes;
[FieldOffset(320)]
internal global::Std.Vector.__Internal Templates;
[FieldOffset(344)]
internal global::Std.Vector.__Internal Typedefs;
[FieldOffset(368)]
internal global::Std.Vector.__Internal TypeAliases;
[FieldOffset(392)]
internal global::Std.Vector.__Internal Variables;
[FieldOffset(416)]
internal global::Std.Vector.__Internal Friends;
[FieldOffset(440)]
internal global::Std.Map.__Internal anonymous;
[FieldOffset(456)]
internal byte isAnonymous;
[FieldOffset(464)]
internal global::CppSharp.Parser.AST.QualifiedType.__Internal returnType; internal global::CppSharp.Parser.AST.QualifiedType.__Internal returnType;
[FieldOffset(240)] [FieldOffset(480)]
internal byte isReturnIndirect; internal byte isReturnIndirect;
[FieldOffset(241)] [FieldOffset(481)]
internal byte hasThisReturn; internal byte hasThisReturn;
[FieldOffset(242)] [FieldOffset(482)]
internal byte isConstExpr; internal byte isConstExpr;
[FieldOffset(243)] [FieldOffset(483)]
internal byte isVariadic; internal byte isVariadic;
[FieldOffset(244)] [FieldOffset(484)]
internal byte isInline; internal byte isInline;
[FieldOffset(245)] [FieldOffset(485)]
internal byte isPure; internal byte isPure;
[FieldOffset(246)] [FieldOffset(486)]
internal byte isDeleted; internal byte isDeleted;
[FieldOffset(248)] [FieldOffset(488)]
internal global::CppSharp.Parser.AST.FriendKind friendKind; internal global::CppSharp.Parser.AST.FriendKind friendKind;
[FieldOffset(252)] [FieldOffset(492)]
internal global::CppSharp.Parser.AST.CXXOperatorKind operatorKind; internal global::CppSharp.Parser.AST.CXXOperatorKind operatorKind;
[FieldOffset(256)] [FieldOffset(496)]
internal global::Std.BasicString.__Internal mangled; internal global::Std.BasicString.__Internal mangled;
[FieldOffset(288)] [FieldOffset(528)]
internal global::Std.BasicString.__Internal signature; internal global::Std.BasicString.__Internal signature;
[FieldOffset(320)] [FieldOffset(560)]
internal global::Std.BasicString.__Internal body; internal global::Std.BasicString.__Internal body;
[FieldOffset(352)] [FieldOffset(592)]
internal global::CppSharp.Parser.AST.CallingConvention callingConvention; internal global::CppSharp.Parser.AST.CallingConvention callingConvention;
[FieldOffset(360)] [FieldOffset(600)]
internal global::Std.Vector.__Internal Parameters; internal global::Std.Vector.__Internal Parameters;
[FieldOffset(384)] [FieldOffset(624)]
internal global::System.IntPtr specializationInfo; internal global::System.IntPtr specializationInfo;
[FieldOffset(392)] [FieldOffset(632)]
internal global::System.IntPtr instantiatedFrom; internal global::System.IntPtr instantiatedFrom;
[FieldOffset(400)] [FieldOffset(640)]
internal global::CppSharp.Parser.AST.QualifiedType.__Internal qualifiedType; internal global::CppSharp.Parser.AST.QualifiedType.__Internal qualifiedType;
[FieldOffset(416)] [FieldOffset(656)]
internal byte isVirtual; internal byte isVirtual;
[FieldOffset(417)] [FieldOffset(657)]
internal byte isStatic; internal byte isStatic;
[FieldOffset(418)] [FieldOffset(658)]
internal byte isConst; internal byte isConst;
[FieldOffset(419)] [FieldOffset(659)]
internal byte isExplicit; internal byte isExplicit;
[FieldOffset(420)] [FieldOffset(660)]
internal byte isOverride; internal byte isOverride;
[FieldOffset(424)] [FieldOffset(664)]
internal global::CppSharp.Parser.AST.CXXMethodKind methodKind; internal global::CppSharp.Parser.AST.CXXMethodKind methodKind;
[FieldOffset(428)] [FieldOffset(668)]
internal byte isDefaultConstructor; internal byte isDefaultConstructor;
[FieldOffset(429)] [FieldOffset(669)]
internal byte isCopyConstructor; internal byte isCopyConstructor;
[FieldOffset(430)] [FieldOffset(670)]
internal byte isMoveConstructor; internal byte isMoveConstructor;
[FieldOffset(432)] [FieldOffset(672)]
internal global::CppSharp.Parser.AST.QualifiedType.__Internal conversionType; internal global::CppSharp.Parser.AST.QualifiedType.__Internal conversionType;
[FieldOffset(448)] [FieldOffset(688)]
internal global::CppSharp.Parser.AST.RefQualifierKind refQualifier; internal global::CppSharp.Parser.AST.RefQualifierKind refQualifier;
[SuppressUnmanagedCodeSecurity] [SuppressUnmanagedCodeSecurity]

50
src/CppParser/Bindings/CSharp/x86_64-pc-win32-msvc/Std.cs

@ -205,91 +205,84 @@ namespace Std
} }
[StructLayout(LayoutKind.Explicit, Size = 24)] [StructLayout(LayoutKind.Explicit, Size = 24)]
public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_Parameter___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1 public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_Template___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1
{ {
[FieldOffset(0)] [FieldOffset(0)]
internal global::Std.VectorVal.__Internal _Myval2; internal global::Std.VectorVal.__Internal _Myval2;
} }
[StructLayout(LayoutKind.Explicit, Size = 24)] [StructLayout(LayoutKind.Explicit, Size = 24)]
public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_FunctionTemplateSpecialization___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1 public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_TypedefDecl___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1
{ {
[FieldOffset(0)] [FieldOffset(0)]
internal global::Std.VectorVal.__Internal _Myval2; internal global::Std.VectorVal.__Internal _Myval2;
} }
[StructLayout(LayoutKind.Explicit, Size = 24)] [StructLayout(LayoutKind.Explicit, Size = 24)]
public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator____N_CppSharp_N_CppParser_N_AST_S_TemplateArgument___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1 public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_TypeAlias___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1
{ {
[FieldOffset(0)] [FieldOffset(0)]
internal global::Std.VectorVal.__Internal _Myval2; internal global::Std.VectorVal.__Internal _Myval2;
} }
[StructLayout(LayoutKind.Explicit, Size = 24)] [StructLayout(LayoutKind.Explicit, Size = 24)]
public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_Function___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1 public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_Variable___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1
{ {
[FieldOffset(0)] [FieldOffset(0)]
internal global::Std.VectorVal.__Internal _Myval2; internal global::Std.VectorVal.__Internal _Myval2;
} }
[StructLayout(LayoutKind.Explicit, Size = 24)] [StructLayout(LayoutKind.Explicit, Size = 24)]
public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_Template___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1 public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_Friend___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1
{ {
[FieldOffset(0)] [FieldOffset(0)]
internal global::Std.VectorVal.__Internal _Myval2; internal global::Std.VectorVal.__Internal _Myval2;
} }
[StructLayout(LayoutKind.Explicit, Size = 24)] [StructLayout(LayoutKind.Explicit, Size = 16)]
public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_TypedefDecl___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1 public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S_less____N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C___N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator____N_std_S__Tree_node____N_std_S_pair__1S1_____N_CppSharp_N_CppParser_N_AST_S_Declaration__v___N_std_S__Tree_val____N_std_S__Tree_simple_types__S8__Vb1_Vb1
{ {
[FieldOffset(0)] [FieldOffset(0)]
internal global::Std.VectorVal.__Internal _Myval2; internal global::Std.CompressedPair.__Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator____N_std_S__Tree_node____N_std_S_pair__1__N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C____N_CppSharp_N_CppParser_N_AST_S_Declaration__v___N_std_S__Tree_val____N_std_S__Tree_simple_types__S3__Vb1 _Myval2;
} }
[StructLayout(LayoutKind.Explicit, Size = 24)] [StructLayout(LayoutKind.Explicit, Size = 16)]
public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_TypeAlias___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1 public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator____N_std_S__Tree_node____N_std_S_pair__1__N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C____N_CppSharp_N_CppParser_N_AST_S_Declaration__v___N_std_S__Tree_val____N_std_S__Tree_simple_types__S3__Vb1
{ {
[FieldOffset(0)] [FieldOffset(0)]
internal global::Std.VectorVal.__Internal _Myval2; internal global::Std.TreeVal.__Internal _Myval2;
} }
[StructLayout(LayoutKind.Explicit, Size = 24)] [StructLayout(LayoutKind.Explicit, Size = 24)]
public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_Variable___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1 public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_BaseClassSpecifier___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1
{ {
[FieldOffset(0)] [FieldOffset(0)]
internal global::Std.VectorVal.__Internal _Myval2; internal global::Std.VectorVal.__Internal _Myval2;
} }
[StructLayout(LayoutKind.Explicit, Size = 24)] [StructLayout(LayoutKind.Explicit, Size = 24)]
public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_Friend___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1 public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_Field___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1
{ {
[FieldOffset(0)] [FieldOffset(0)]
internal global::Std.VectorVal.__Internal _Myval2; internal global::Std.VectorVal.__Internal _Myval2;
} }
[StructLayout(LayoutKind.Explicit, Size = 16)] [StructLayout(LayoutKind.Explicit, Size = 24)]
public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S_less____N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C___N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator____N_std_S__Tree_node____N_std_S_pair__1S1_____N_CppSharp_N_CppParser_N_AST_S_Declaration__v___N_std_S__Tree_val____N_std_S__Tree_simple_types__S8__Vb1_Vb1 public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_Parameter___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1
{
[FieldOffset(0)]
internal global::Std.CompressedPair.__Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator____N_std_S__Tree_node____N_std_S_pair__1__N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C____N_CppSharp_N_CppParser_N_AST_S_Declaration__v___N_std_S__Tree_val____N_std_S__Tree_simple_types__S3__Vb1 _Myval2;
}
[StructLayout(LayoutKind.Explicit, Size = 16)]
public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator____N_std_S__Tree_node____N_std_S_pair__1__N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C____N_CppSharp_N_CppParser_N_AST_S_Declaration__v___N_std_S__Tree_val____N_std_S__Tree_simple_types__S3__Vb1
{ {
[FieldOffset(0)] [FieldOffset(0)]
internal global::Std.TreeVal.__Internal _Myval2; internal global::Std.VectorVal.__Internal _Myval2;
} }
[StructLayout(LayoutKind.Explicit, Size = 24)] [StructLayout(LayoutKind.Explicit, Size = 24)]
public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_BaseClassSpecifier___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1 public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_FunctionTemplateSpecialization___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1
{ {
[FieldOffset(0)] [FieldOffset(0)]
internal global::Std.VectorVal.__Internal _Myval2; internal global::Std.VectorVal.__Internal _Myval2;
} }
[StructLayout(LayoutKind.Explicit, Size = 24)] [StructLayout(LayoutKind.Explicit, Size = 24)]
public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_Field___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1 public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator____N_CppSharp_N_CppParser_N_AST_S_TemplateArgument___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1
{ {
[FieldOffset(0)] [FieldOffset(0)]
internal global::Std.VectorVal.__Internal _Myval2; internal global::Std.VectorVal.__Internal _Myval2;
@ -344,6 +337,13 @@ namespace Std
internal global::Std.VectorVal.__Internal _Myval2; internal global::Std.VectorVal.__Internal _Myval2;
} }
[StructLayout(LayoutKind.Explicit, Size = 24)]
public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_Function___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1
{
[FieldOffset(0)]
internal global::Std.VectorVal.__Internal _Myval2;
}
[StructLayout(LayoutKind.Explicit, Size = 24)] [StructLayout(LayoutKind.Explicit, Size = 24)]
public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_Enumeration_S_Item___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1 public unsafe partial struct __Internalc__N_std_S__Compressed_pair____N_std_S__Wrap_alloc____N_std_S_allocator_____N_CppSharp_N_CppParser_N_AST_S_Enumeration_S_Item___N_std_S__Vector_val____N_std_S__Simple_types__S2__Vb1
{ {

3
src/Generator/Passes/CheckMacrosPass.cs

@ -60,10 +60,11 @@ namespace CppSharp.Passes
public override bool VisitDeclaration(Declaration decl) public override bool VisitDeclaration(Declaration decl)
{ {
if (AlreadyVisited(decl)) if (AlreadyVisited(decl))
return false; return false;
if (decl is DeclarationContext && !(decl is Class)) if (decl is DeclarationContext && !(decl is Class) && !(decl is Function))
return true; return true;
var expansions = decl.PreprocessedEntities.OfType<MacroExpansion>(); var expansions = decl.PreprocessedEntities.OfType<MacroExpansion>();

17
src/Parser/ASTConverter.cs

@ -915,7 +915,7 @@ namespace CppSharp
bool CheckForDuplicates(Declaration decl) bool CheckForDuplicates(Declaration decl)
{ {
return decl.OriginalPtr.ToPointer() != (void*)(0x1); return decl.OriginalPtr.ToPointer() != (void*) (0x1);
} }
void VisitDeclaration(Declaration decl, AST.Declaration _decl) void VisitDeclaration(Declaration decl, AST.Declaration _decl)
@ -942,7 +942,7 @@ namespace CppSharp
_decl.IsDependent = decl.IsDependent; _decl.IsDependent = decl.IsDependent;
_decl.DefinitionOrder = decl.DefinitionOrder; _decl.DefinitionOrder = decl.DefinitionOrder;
_decl.MaxFieldAlignment = decl.MaxFieldAlignment; _decl.MaxFieldAlignment = decl.MaxFieldAlignment;
if (decl.CompleteDeclaration != null) if (decl.CompleteDeclaration != null)
_decl.CompleteDeclaration = Visit(decl.CompleteDeclaration); _decl.CompleteDeclaration = Visit(decl.CompleteDeclaration);
if (decl.Comment != null) if (decl.Comment != null)
@ -1160,6 +1160,7 @@ namespace CppSharp
public void VisitFunction(Function function, AST.Function _function) public void VisitFunction(Function function, AST.Function _function)
{ {
VisitDeclaration(function, _function); VisitDeclaration(function, _function);
VisitDeclContext(function, _function);
_function.ReturnType = typeConverter.VisitQualified(function.ReturnType); _function.ReturnType = typeConverter.VisitQualified(function.ReturnType);
_function.IsReturnIndirect = function.IsReturnIndirect; _function.IsReturnIndirect = function.IsReturnIndirect;
@ -1692,7 +1693,7 @@ namespace CppSharp
for (uint i = 0; i < decl.SpecializationsCount; ++i) for (uint i = 0; i < decl.SpecializationsCount; ++i)
{ {
var spec = decl.GetSpecializations(i); var spec = decl.GetSpecializations(i);
var _spec = (AST.ClassTemplateSpecialization)Visit(spec); var _spec = (AST.ClassTemplateSpecialization) Visit(spec);
_decl.Specializations.Add(_spec); _decl.Specializations.Add(_spec);
} }
return _decl; return _decl;
@ -1711,7 +1712,7 @@ namespace CppSharp
{ {
VisitClass(decl, _decl); VisitClass(decl, _decl);
_decl.SpecializationKind = VisitSpecializationKind(decl.SpecializationKind); _decl.SpecializationKind = VisitSpecializationKind(decl.SpecializationKind);
_decl.TemplatedDecl = (AST.ClassTemplate)Visit(decl.TemplatedDecl); _decl.TemplatedDecl = (AST.ClassTemplate) Visit(decl.TemplatedDecl);
for (uint i = 0; i < decl.ArgumentsCount; ++i) for (uint i = 0; i < decl.ArgumentsCount; ++i)
{ {
var arg = decl.GetArguments(i); var arg = decl.GetArguments(i);
@ -1805,8 +1806,8 @@ namespace CppSharp
var _spec = new AST.FunctionTemplateSpecialization(); var _spec = new AST.FunctionTemplateSpecialization();
FunctionTemplateSpecializations.Add(spec.__Instance, _spec); FunctionTemplateSpecializations.Add(spec.__Instance, _spec);
_spec.Template = (AST.FunctionTemplate)Visit(spec.Template); _spec.Template = (AST.FunctionTemplate) Visit(spec.Template);
_spec.SpecializedFunction = (AST.Function)Visit(spec.SpecializedFunction); _spec.SpecializedFunction = (AST.Function) Visit(spec.SpecializedFunction);
_spec.SpecializationKind = VisitSpecializationKind(spec.SpecializationKind); _spec.SpecializationKind = VisitSpecializationKind(spec.SpecializationKind);
for (uint i = 0; i < spec.ArgumentsCount; ++i) for (uint i = 0; i < spec.ArgumentsCount; ++i)
{ {
@ -1824,7 +1825,7 @@ namespace CppSharp
for (uint i = 0; i < decl.SpecializationsCount; ++i) for (uint i = 0; i < decl.SpecializationsCount; ++i)
{ {
var spec = decl.GetSpecializations(i); var spec = decl.GetSpecializations(i);
var _spec = (AST.VarTemplateSpecialization)Visit(spec); var _spec = (AST.VarTemplateSpecialization) Visit(spec);
_decl.Specializations.Add(_spec); _decl.Specializations.Add(_spec);
} }
return _decl; return _decl;
@ -1843,7 +1844,7 @@ namespace CppSharp
{ {
VisitVariable(decl, _decl); VisitVariable(decl, _decl);
_decl.SpecializationKind = VisitSpecializationKind(decl.SpecializationKind); _decl.SpecializationKind = VisitSpecializationKind(decl.SpecializationKind);
_decl.TemplatedDecl = (AST.VarTemplate)Visit(decl.TemplatedDecl); _decl.TemplatedDecl = (AST.VarTemplate) Visit(decl.TemplatedDecl);
for (uint i = 0; i < decl.ArgumentsCount; ++i) for (uint i = 0; i < decl.ArgumentsCount; ++i)
{ {
var arg = decl.GetArguments(i); var arg = decl.GetArguments(i);

Loading…
Cancel
Save