diff --git a/src/Core/Parser/ASTConverter.cs b/src/Core/Parser/ASTConverter.cs index 4f0f43fb..99e8f0ee 100644 --- a/src/Core/Parser/ASTConverter.cs +++ b/src/Core/Parser/ASTConverter.cs @@ -36,77 +36,77 @@ namespace CppSharp { case TypeKind.Tag: { - var _type = new TagType(type.__Instance); + var _type = TagType.__CreateInstance(type.__Instance); return VisitTag(_type); } case TypeKind.Array: { - var _type = new ArrayType(type.__Instance); + var _type = ArrayType.__CreateInstance(type.__Instance); return VisitArray(_type); } case TypeKind.Function: { - var _type = new FunctionType(type.__Instance); + var _type = FunctionType.__CreateInstance(type.__Instance); return VisitFunction(_type); } case TypeKind.Pointer: { - var _type = new PointerType(type.__Instance); + var _type = PointerType.__CreateInstance(type.__Instance); return VisitPointer(_type); } case TypeKind.MemberPointer: { - var _type = new MemberPointerType(type.__Instance); + var _type = MemberPointerType.__CreateInstance(type.__Instance); return VisitMemberPointer(_type); } case TypeKind.Typedef: { - var _type = new TypedefType(type.__Instance); + var _type = TypedefType.__CreateInstance(type.__Instance); return VisitTypedef(_type); } case TypeKind.Attributed: { - var _type = new AttributedType(type.__Instance); + var _type = AttributedType.__CreateInstance(type.__Instance); return VisitAttributed(_type); } case TypeKind.Decayed: { - var _type = new DecayedType(type.__Instance); + var _type = DecayedType.__CreateInstance(type.__Instance); return VisitDecayed(_type); } case TypeKind.TemplateSpecialization: { - var _type = new TemplateSpecializationType(type.__Instance); + var _type = TemplateSpecializationType.__CreateInstance(type.__Instance); return VisitTemplateSpecialization(_type); } case TypeKind.TemplateParameter: { - var _type = new TemplateParameterType(type.__Instance); + var _type = TemplateParameterType.__CreateInstance(type.__Instance); return VisitTemplateParameter(_type); } case TypeKind.TemplateParameterSubstitution: { - var _type = new TemplateParameterSubstitutionType(type.__Instance); + var _type = TemplateParameterSubstitutionType.__CreateInstance(type.__Instance); return VisitTemplateParameterSubstitution(_type); } case TypeKind.InjectedClassName: { - var _type = new InjectedClassNameType(type.__Instance); + var _type = InjectedClassNameType.__CreateInstance(type.__Instance); return VisitInjectedClassName(_type); } case TypeKind.DependentName: { - var _type = new DependentNameType(type.__Instance); + var _type = DependentNameType.__CreateInstance(type.__Instance); return VisitDependentName(_type); } case TypeKind.Builtin: { - var _type = new BuiltinType(type.__Instance); + var _type = BuiltinType.__CreateInstance(type.__Instance); return VisitBuiltin(_type); } case TypeKind.PackExpansion: { - var _type = new PackExpansionType(type.__Instance); + var _type = PackExpansionType.__CreateInstance(type.__Instance); return VisitPackExpansion(_type); } } @@ -147,92 +147,92 @@ namespace CppSharp { case DeclarationKind.TranslationUnit: { - var _decl = new TranslationUnit(decl.__Instance); + var _decl = TranslationUnit.__CreateInstance(decl.__Instance); return VisitTranslationUnit(_decl); } case DeclarationKind.Namespace: { - var _decl = new Namespace(decl.__Instance); + var _decl = Namespace.__CreateInstance(decl.__Instance); return VisitNamespace(_decl); } case DeclarationKind.Typedef: { - var _decl = new TypedefDecl(decl.__Instance); + var _decl = TypedefDecl.__CreateInstance(decl.__Instance); return VisitTypedef(_decl); } case DeclarationKind.Parameter: { - var _decl = new Parameter(decl.__Instance); + var _decl = Parameter.__CreateInstance(decl.__Instance); return VisitParameter(_decl); } case DeclarationKind.Function: { - var _decl = new Function(decl.__Instance); + var _decl = Function.__CreateInstance(decl.__Instance); return VisitFunction(_decl); } case DeclarationKind.Method: { - var _decl = new Method(decl.__Instance); + var _decl = Method.__CreateInstance(decl.__Instance); return VisitMethod(_decl); } case DeclarationKind.Enumeration: { - var _decl = new Enumeration(decl.__Instance); + var _decl = Enumeration.__CreateInstance(decl.__Instance); return VisitEnumeration(_decl); } case DeclarationKind.EnumerationItem: { - var _decl = new Enumeration.Item(decl.__Instance); + var _decl = Enumeration.Item.__CreateInstance(decl.__Instance); return VisitEnumerationItem(_decl); } case DeclarationKind.Variable: { - var _decl = new Variable(decl.__Instance); + var _decl = Variable.__CreateInstance(decl.__Instance); return VisitVariable(_decl); } case DeclarationKind.Field: { - var _decl = new Field(decl.__Instance); + var _decl = Field.__CreateInstance(decl.__Instance); return VisitField(_decl); } case DeclarationKind.AccessSpecifier: { - var _decl = new AccessSpecifierDecl(decl.__Instance); + var _decl = AccessSpecifierDecl.__CreateInstance(decl.__Instance); return VisitAccessSpecifier(_decl); } case DeclarationKind.Class: { - var _decl = new Class(decl.__Instance); + var _decl = Class.__CreateInstance(decl.__Instance); return VisitClass(_decl); } case DeclarationKind.ClassTemplate: { - var _decl = new ClassTemplate(decl.__Instance); + var _decl = ClassTemplate.__CreateInstance(decl.__Instance); return VisitClassTemplate(_decl); } case DeclarationKind.ClassTemplateSpecialization: { - var _decl = new ClassTemplateSpecialization(decl.__Instance); + var _decl = ClassTemplateSpecialization.__CreateInstance(decl.__Instance); return VisitClassTemplateSpecialization(_decl); } case DeclarationKind.ClassTemplatePartialSpecialization: { - var _decl = new ClassTemplatePartialSpecialization(decl.__Instance); + var _decl = ClassTemplatePartialSpecialization.__CreateInstance(decl.__Instance); return VisitClassTemplatePartialSpecialization(_decl); } case DeclarationKind.FunctionTemplate: { - var _decl = new FunctionTemplate(decl.__Instance); + var _decl = FunctionTemplate.__CreateInstance(decl.__Instance); return VisitFunctionTemplate(_decl); } case DeclarationKind.MacroDefinition: { - var _decl = new MacroDefinition(decl.__Instance); + var _decl = MacroDefinition.__CreateInstance(decl.__Instance); return VisitMacroDefinition(_decl); } case DeclarationKind.MacroExpansion: { - var _decl = new MacroExpansion(decl.__Instance); + var _decl = MacroExpansion.__CreateInstance(decl.__Instance); return VisitMacroExpansion(_decl); } } @@ -254,7 +254,7 @@ namespace CppSharp { case CommentKind.FullComment: { - var _comment = new FullComment(comment.__Instance); + var _comment = FullComment.__CreateInstance(comment.__Instance); return VisitFullComment(_comment); } } @@ -616,7 +616,7 @@ namespace CppSharp if (decl.OriginalPtr == null) throw new NotSupportedException("Original pointer must not be null"); - var originalPtr = new IntPtr(decl.OriginalPtr); + var originalPtr = decl.OriginalPtr; // Check if the declaration was already handled and return its // existing instance. @@ -698,7 +698,7 @@ namespace CppSharp bool CheckForDuplicates(Declaration decl) { - if (decl.OriginalPtr == (void*) (0x1)) + if (decl.OriginalPtr.ToPointer() == (void*) (0x1)) return false; return !(decl is PreprocessedEntity); @@ -706,7 +706,7 @@ namespace CppSharp void VisitDeclaration(Declaration decl, AST.Declaration _decl) { - var originalPtr = new IntPtr(decl.OriginalPtr); + var originalPtr = decl.OriginalPtr; if (CheckForDuplicates(decl)) if (Declarations.ContainsKey(originalPtr)) diff --git a/src/CppParser/Bindings/CLI/AST.cpp b/src/CppParser/Bindings/CLI/AST.cpp index a76a649a..490401c0 100644 --- a/src/CppParser/Bindings/CLI/AST.cpp +++ b/src/CppParser/Bindings/CLI/AST.cpp @@ -8,10 +8,9 @@ CppSharp::Parser::AST::Type::Type(::CppSharp::CppParser::AST::Type* native) NativePtr = native; } -CppSharp::Parser::AST::Type::Type(System::IntPtr native) +CppSharp::Parser::AST::Type^ CppSharp::Parser::AST::Type::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::Type*)native.ToPointer(); - NativePtr = __native; + return gcnew CppSharp::Parser::AST::Type((::CppSharp::CppParser::AST::Type*) native.ToPointer()); } CppSharp::Parser::AST::Type::Type(CppSharp::Parser::AST::TypeKind kind) @@ -55,10 +54,9 @@ CppSharp::Parser::AST::TypeQualifiers::TypeQualifiers(::CppSharp::CppParser::AST NativePtr = native; } -CppSharp::Parser::AST::TypeQualifiers::TypeQualifiers(System::IntPtr native) +CppSharp::Parser::AST::TypeQualifiers^ CppSharp::Parser::AST::TypeQualifiers::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::TypeQualifiers*)native.ToPointer(); - NativePtr = __native; + return gcnew CppSharp::Parser::AST::TypeQualifiers((::CppSharp::CppParser::AST::TypeQualifiers*) native.ToPointer()); } CppSharp::Parser::AST::TypeQualifiers::TypeQualifiers() @@ -111,10 +109,9 @@ CppSharp::Parser::AST::QualifiedType::QualifiedType(::CppSharp::CppParser::AST:: NativePtr = native; } -CppSharp::Parser::AST::QualifiedType::QualifiedType(System::IntPtr native) +CppSharp::Parser::AST::QualifiedType^ CppSharp::Parser::AST::QualifiedType::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::QualifiedType*)native.ToPointer(); - NativePtr = __native; + return gcnew CppSharp::Parser::AST::QualifiedType((::CppSharp::CppParser::AST::QualifiedType*) native.ToPointer()); } CppSharp::Parser::AST::QualifiedType::QualifiedType() @@ -157,10 +154,9 @@ CppSharp::Parser::AST::TagType::TagType(::CppSharp::CppParser::AST::TagType* nat { } -CppSharp::Parser::AST::TagType::TagType(System::IntPtr native) - : CppSharp::Parser::AST::Type(native) +CppSharp::Parser::AST::TagType^ CppSharp::Parser::AST::TagType::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::TagType*)native.ToPointer(); + return gcnew CppSharp::Parser::AST::TagType((::CppSharp::CppParser::AST::TagType*) native.ToPointer()); } CppSharp::Parser::AST::TagType::TagType() @@ -184,10 +180,9 @@ CppSharp::Parser::AST::ArrayType::ArrayType(::CppSharp::CppParser::AST::ArrayTyp { } -CppSharp::Parser::AST::ArrayType::ArrayType(System::IntPtr native) - : CppSharp::Parser::AST::Type(native) +CppSharp::Parser::AST::ArrayType^ CppSharp::Parser::AST::ArrayType::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::ArrayType*)native.ToPointer(); + return gcnew CppSharp::Parser::AST::ArrayType((::CppSharp::CppParser::AST::ArrayType*) native.ToPointer()); } CppSharp::Parser::AST::ArrayType::ArrayType() @@ -231,10 +226,9 @@ CppSharp::Parser::AST::FunctionType::FunctionType(::CppSharp::CppParser::AST::Fu { } -CppSharp::Parser::AST::FunctionType::FunctionType(System::IntPtr native) - : CppSharp::Parser::AST::Type(native) +CppSharp::Parser::AST::FunctionType^ CppSharp::Parser::AST::FunctionType::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::FunctionType*)native.ToPointer(); + return gcnew CppSharp::Parser::AST::FunctionType((::CppSharp::CppParser::AST::FunctionType*) native.ToPointer()); } CppSharp::Parser::AST::FunctionType::FunctionType() @@ -292,10 +286,9 @@ CppSharp::Parser::AST::PointerType::PointerType(::CppSharp::CppParser::AST::Poin { } -CppSharp::Parser::AST::PointerType::PointerType(System::IntPtr native) - : CppSharp::Parser::AST::Type(native) +CppSharp::Parser::AST::PointerType^ CppSharp::Parser::AST::PointerType::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::PointerType*)native.ToPointer(); + return gcnew CppSharp::Parser::AST::PointerType((::CppSharp::CppParser::AST::PointerType*) native.ToPointer()); } CppSharp::Parser::AST::PointerType::PointerType() @@ -329,10 +322,9 @@ CppSharp::Parser::AST::MemberPointerType::MemberPointerType(::CppSharp::CppParse { } -CppSharp::Parser::AST::MemberPointerType::MemberPointerType(System::IntPtr native) - : CppSharp::Parser::AST::Type(native) +CppSharp::Parser::AST::MemberPointerType^ CppSharp::Parser::AST::MemberPointerType::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::MemberPointerType*)native.ToPointer(); + return gcnew CppSharp::Parser::AST::MemberPointerType((::CppSharp::CppParser::AST::MemberPointerType*) native.ToPointer()); } CppSharp::Parser::AST::MemberPointerType::MemberPointerType() @@ -356,10 +348,9 @@ CppSharp::Parser::AST::TypedefType::TypedefType(::CppSharp::CppParser::AST::Type { } -CppSharp::Parser::AST::TypedefType::TypedefType(System::IntPtr native) - : CppSharp::Parser::AST::Type(native) +CppSharp::Parser::AST::TypedefType^ CppSharp::Parser::AST::TypedefType::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::TypedefType*)native.ToPointer(); + return gcnew CppSharp::Parser::AST::TypedefType((::CppSharp::CppParser::AST::TypedefType*) native.ToPointer()); } CppSharp::Parser::AST::TypedefType::TypedefType() @@ -383,10 +374,9 @@ CppSharp::Parser::AST::AttributedType::AttributedType(::CppSharp::CppParser::AST { } -CppSharp::Parser::AST::AttributedType::AttributedType(System::IntPtr native) - : CppSharp::Parser::AST::Type(native) +CppSharp::Parser::AST::AttributedType^ CppSharp::Parser::AST::AttributedType::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::AttributedType*)native.ToPointer(); + return gcnew CppSharp::Parser::AST::AttributedType((::CppSharp::CppParser::AST::AttributedType*) native.ToPointer()); } CppSharp::Parser::AST::AttributedType::AttributedType() @@ -420,10 +410,9 @@ CppSharp::Parser::AST::DecayedType::DecayedType(::CppSharp::CppParser::AST::Deca { } -CppSharp::Parser::AST::DecayedType::DecayedType(System::IntPtr native) - : CppSharp::Parser::AST::Type(native) +CppSharp::Parser::AST::DecayedType^ CppSharp::Parser::AST::DecayedType::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::DecayedType*)native.ToPointer(); + return gcnew CppSharp::Parser::AST::DecayedType((::CppSharp::CppParser::AST::DecayedType*) native.ToPointer()); } CppSharp::Parser::AST::DecayedType::DecayedType() @@ -467,10 +456,9 @@ CppSharp::Parser::AST::TemplateArgument::TemplateArgument(::CppSharp::CppParser: NativePtr = native; } -CppSharp::Parser::AST::TemplateArgument::TemplateArgument(System::IntPtr native) +CppSharp::Parser::AST::TemplateArgument^ CppSharp::Parser::AST::TemplateArgument::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::TemplateArgument*)native.ToPointer(); - NativePtr = __native; + return gcnew CppSharp::Parser::AST::TemplateArgument((::CppSharp::CppParser::AST::TemplateArgument*) native.ToPointer()); } CppSharp::Parser::AST::TemplateArgument::TemplateArgument() @@ -533,10 +521,9 @@ CppSharp::Parser::AST::TemplateSpecializationType::TemplateSpecializationType(:: { } -CppSharp::Parser::AST::TemplateSpecializationType::TemplateSpecializationType(System::IntPtr native) - : CppSharp::Parser::AST::Type(native) +CppSharp::Parser::AST::TemplateSpecializationType^ CppSharp::Parser::AST::TemplateSpecializationType::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::TemplateSpecializationType*)native.ToPointer(); + return gcnew CppSharp::Parser::AST::TemplateSpecializationType((::CppSharp::CppParser::AST::TemplateSpecializationType*) native.ToPointer()); } CppSharp::Parser::AST::TemplateSpecializationType::TemplateSpecializationType() @@ -594,10 +581,9 @@ CppSharp::Parser::AST::TemplateParameter::TemplateParameter(::CppSharp::CppParse NativePtr = native; } -CppSharp::Parser::AST::TemplateParameter::TemplateParameter(System::IntPtr native) +CppSharp::Parser::AST::TemplateParameter^ CppSharp::Parser::AST::TemplateParameter::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::TemplateParameter*)native.ToPointer(); - NativePtr = __native; + return gcnew CppSharp::Parser::AST::TemplateParameter((::CppSharp::CppParser::AST::TemplateParameter*) native.ToPointer()); } CppSharp::Parser::AST::TemplateParameter::TemplateParameter() @@ -652,10 +638,9 @@ CppSharp::Parser::AST::TemplateParameterType::TemplateParameterType(::CppSharp:: { } -CppSharp::Parser::AST::TemplateParameterType::TemplateParameterType(System::IntPtr native) - : CppSharp::Parser::AST::Type(native) +CppSharp::Parser::AST::TemplateParameterType^ CppSharp::Parser::AST::TemplateParameterType::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::TemplateParameterType*)native.ToPointer(); + return gcnew CppSharp::Parser::AST::TemplateParameterType((::CppSharp::CppParser::AST::TemplateParameterType*) native.ToPointer()); } CppSharp::Parser::AST::TemplateParameterType::TemplateParameterType() @@ -709,10 +694,9 @@ CppSharp::Parser::AST::TemplateParameterSubstitutionType::TemplateParameterSubst { } -CppSharp::Parser::AST::TemplateParameterSubstitutionType::TemplateParameterSubstitutionType(System::IntPtr native) - : CppSharp::Parser::AST::Type(native) +CppSharp::Parser::AST::TemplateParameterSubstitutionType^ CppSharp::Parser::AST::TemplateParameterSubstitutionType::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::TemplateParameterSubstitutionType*)native.ToPointer(); + return gcnew CppSharp::Parser::AST::TemplateParameterSubstitutionType((::CppSharp::CppParser::AST::TemplateParameterSubstitutionType*) native.ToPointer()); } CppSharp::Parser::AST::TemplateParameterSubstitutionType::TemplateParameterSubstitutionType() @@ -736,10 +720,9 @@ CppSharp::Parser::AST::InjectedClassNameType::InjectedClassNameType(::CppSharp:: { } -CppSharp::Parser::AST::InjectedClassNameType::InjectedClassNameType(System::IntPtr native) - : CppSharp::Parser::AST::Type(native) +CppSharp::Parser::AST::InjectedClassNameType^ CppSharp::Parser::AST::InjectedClassNameType::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::InjectedClassNameType*)native.ToPointer(); + return gcnew CppSharp::Parser::AST::InjectedClassNameType((::CppSharp::CppParser::AST::InjectedClassNameType*) native.ToPointer()); } CppSharp::Parser::AST::InjectedClassNameType::InjectedClassNameType() @@ -773,10 +756,9 @@ CppSharp::Parser::AST::DependentNameType::DependentNameType(::CppSharp::CppParse { } -CppSharp::Parser::AST::DependentNameType::DependentNameType(System::IntPtr native) - : CppSharp::Parser::AST::Type(native) +CppSharp::Parser::AST::DependentNameType^ CppSharp::Parser::AST::DependentNameType::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::DependentNameType*)native.ToPointer(); + return gcnew CppSharp::Parser::AST::DependentNameType((::CppSharp::CppParser::AST::DependentNameType*) native.ToPointer()); } CppSharp::Parser::AST::DependentNameType::DependentNameType() @@ -790,10 +772,9 @@ CppSharp::Parser::AST::PackExpansionType::PackExpansionType(::CppSharp::CppParse { } -CppSharp::Parser::AST::PackExpansionType::PackExpansionType(System::IntPtr native) - : CppSharp::Parser::AST::Type(native) +CppSharp::Parser::AST::PackExpansionType^ CppSharp::Parser::AST::PackExpansionType::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::PackExpansionType*)native.ToPointer(); + return gcnew CppSharp::Parser::AST::PackExpansionType((::CppSharp::CppParser::AST::PackExpansionType*) native.ToPointer()); } CppSharp::Parser::AST::PackExpansionType::PackExpansionType() @@ -807,10 +788,9 @@ CppSharp::Parser::AST::BuiltinType::BuiltinType(::CppSharp::CppParser::AST::Buil { } -CppSharp::Parser::AST::BuiltinType::BuiltinType(System::IntPtr native) - : CppSharp::Parser::AST::Type(native) +CppSharp::Parser::AST::BuiltinType^ CppSharp::Parser::AST::BuiltinType::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::BuiltinType*)native.ToPointer(); + return gcnew CppSharp::Parser::AST::BuiltinType((::CppSharp::CppParser::AST::BuiltinType*) native.ToPointer()); } CppSharp::Parser::AST::BuiltinType::BuiltinType() @@ -834,10 +814,9 @@ CppSharp::Parser::AST::VTableComponent::VTableComponent(::CppSharp::CppParser::A NativePtr = native; } -CppSharp::Parser::AST::VTableComponent::VTableComponent(System::IntPtr native) +CppSharp::Parser::AST::VTableComponent^ CppSharp::Parser::AST::VTableComponent::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::VTableComponent*)native.ToPointer(); - NativePtr = __native; + return gcnew CppSharp::Parser::AST::VTableComponent((::CppSharp::CppParser::AST::VTableComponent*) native.ToPointer()); } CppSharp::Parser::AST::VTableComponent::VTableComponent() @@ -890,10 +869,9 @@ CppSharp::Parser::AST::VTableLayout::VTableLayout(::CppSharp::CppParser::AST::VT NativePtr = native; } -CppSharp::Parser::AST::VTableLayout::VTableLayout(System::IntPtr native) +CppSharp::Parser::AST::VTableLayout^ CppSharp::Parser::AST::VTableLayout::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::VTableLayout*)native.ToPointer(); - NativePtr = __native; + return gcnew CppSharp::Parser::AST::VTableLayout((::CppSharp::CppParser::AST::VTableLayout*) native.ToPointer()); } CppSharp::Parser::AST::VTableLayout::VTableLayout() @@ -940,10 +918,9 @@ CppSharp::Parser::AST::VFTableInfo::VFTableInfo(::CppSharp::CppParser::AST::VFTa NativePtr = native; } -CppSharp::Parser::AST::VFTableInfo::VFTableInfo(System::IntPtr native) +CppSharp::Parser::AST::VFTableInfo^ CppSharp::Parser::AST::VFTableInfo::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::VFTableInfo*)native.ToPointer(); - NativePtr = __native; + return gcnew CppSharp::Parser::AST::VFTableInfo((::CppSharp::CppParser::AST::VFTableInfo*) native.ToPointer()); } CppSharp::Parser::AST::VFTableInfo::VFTableInfo() @@ -1006,10 +983,9 @@ CppSharp::Parser::AST::ClassLayout::ClassLayout(::CppSharp::CppParser::AST::Clas NativePtr = native; } -CppSharp::Parser::AST::ClassLayout::ClassLayout(System::IntPtr native) +CppSharp::Parser::AST::ClassLayout^ CppSharp::Parser::AST::ClassLayout::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::ClassLayout*)native.ToPointer(); - NativePtr = __native; + return gcnew CppSharp::Parser::AST::ClassLayout((::CppSharp::CppParser::AST::ClassLayout*) native.ToPointer()); } CppSharp::Parser::AST::ClassLayout::ClassLayout() @@ -1126,10 +1102,9 @@ CppSharp::Parser::AST::Declaration::Declaration(::CppSharp::CppParser::AST::Decl NativePtr = native; } -CppSharp::Parser::AST::Declaration::Declaration(System::IntPtr native) +CppSharp::Parser::AST::Declaration^ CppSharp::Parser::AST::Declaration::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::Declaration*)native.ToPointer(); - NativePtr = __native; + return gcnew CppSharp::Parser::AST::Declaration((::CppSharp::CppParser::AST::Declaration*) native.ToPointer()); } CppSharp::Parser::AST::Declaration::Declaration(CppSharp::Parser::AST::DeclarationKind kind) @@ -1292,12 +1267,12 @@ void CppSharp::Parser::AST::Declaration::DefinitionOrder::set(unsigned int value ((::CppSharp::CppParser::AST::Declaration*)NativePtr)->DefinitionOrder = value; } -void* CppSharp::Parser::AST::Declaration::OriginalPtr::get() +::System::IntPtr CppSharp::Parser::AST::Declaration::OriginalPtr::get() { - return ((::CppSharp::CppParser::AST::Declaration*)NativePtr)->OriginalPtr; + return ::System::IntPtr(((::CppSharp::CppParser::AST::Declaration*)NativePtr)->OriginalPtr); } -void CppSharp::Parser::AST::Declaration::OriginalPtr::set(void* value) +void CppSharp::Parser::AST::Declaration::OriginalPtr::set(::System::IntPtr value) { ((::CppSharp::CppParser::AST::Declaration*)NativePtr)->OriginalPtr = (void*)value; } @@ -1307,10 +1282,9 @@ CppSharp::Parser::AST::DeclarationContext::DeclarationContext(::CppSharp::CppPar { } -CppSharp::Parser::AST::DeclarationContext::DeclarationContext(System::IntPtr native) - : CppSharp::Parser::AST::Declaration(native) +CppSharp::Parser::AST::DeclarationContext^ CppSharp::Parser::AST::DeclarationContext::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::DeclarationContext*)native.ToPointer(); + return gcnew CppSharp::Parser::AST::DeclarationContext((::CppSharp::CppParser::AST::DeclarationContext*) native.ToPointer()); } CppSharp::Parser::AST::DeclarationContext::DeclarationContext(CppSharp::Parser::AST::DeclarationKind kind) @@ -1503,10 +1477,9 @@ CppSharp::Parser::AST::TypedefDecl::TypedefDecl(::CppSharp::CppParser::AST::Type { } -CppSharp::Parser::AST::TypedefDecl::TypedefDecl(System::IntPtr native) - : CppSharp::Parser::AST::Declaration(native) +CppSharp::Parser::AST::TypedefDecl^ CppSharp::Parser::AST::TypedefDecl::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::TypedefDecl*)native.ToPointer(); + return gcnew CppSharp::Parser::AST::TypedefDecl((::CppSharp::CppParser::AST::TypedefDecl*) native.ToPointer()); } CppSharp::Parser::AST::TypedefDecl::TypedefDecl() @@ -1530,10 +1503,9 @@ CppSharp::Parser::AST::Statement::Statement(::CppSharp::CppParser::AST::Statemen NativePtr = native; } -CppSharp::Parser::AST::Statement::Statement(System::IntPtr native) +CppSharp::Parser::AST::Statement^ CppSharp::Parser::AST::Statement::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::Statement*)native.ToPointer(); - NativePtr = __native; + return gcnew CppSharp::Parser::AST::Statement((::CppSharp::CppParser::AST::Statement*) native.ToPointer()); } System::IntPtr CppSharp::Parser::AST::Statement::__Instance::get() @@ -1585,10 +1557,9 @@ CppSharp::Parser::AST::Expression::Expression(::CppSharp::CppParser::AST::Expres { } -CppSharp::Parser::AST::Expression::Expression(System::IntPtr native) - : CppSharp::Parser::AST::Statement(native) +CppSharp::Parser::AST::Expression^ CppSharp::Parser::AST::Expression::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::Expression*)native.ToPointer(); + return gcnew CppSharp::Parser::AST::Expression((::CppSharp::CppParser::AST::Expression*) native.ToPointer()); } CppSharp::Parser::AST::Parameter::Parameter(::CppSharp::CppParser::AST::Parameter* native) @@ -1596,10 +1567,9 @@ CppSharp::Parser::AST::Parameter::Parameter(::CppSharp::CppParser::AST::Paramete { } -CppSharp::Parser::AST::Parameter::Parameter(System::IntPtr native) - : CppSharp::Parser::AST::Declaration(native) +CppSharp::Parser::AST::Parameter^ CppSharp::Parser::AST::Parameter::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::Parameter*)native.ToPointer(); + return gcnew CppSharp::Parser::AST::Parameter((::CppSharp::CppParser::AST::Parameter*) native.ToPointer()); } CppSharp::Parser::AST::Parameter::Parameter() @@ -1663,10 +1633,9 @@ CppSharp::Parser::AST::Function::Function(::CppSharp::CppParser::AST::Function* { } -CppSharp::Parser::AST::Function::Function(System::IntPtr native) - : CppSharp::Parser::AST::Declaration(native) +CppSharp::Parser::AST::Function^ CppSharp::Parser::AST::Function::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::Function*)native.ToPointer(); + return gcnew CppSharp::Parser::AST::Function((::CppSharp::CppParser::AST::Function*) native.ToPointer()); } CppSharp::Parser::AST::Function::Function() @@ -1832,10 +1801,9 @@ CppSharp::Parser::AST::Method::Method(::CppSharp::CppParser::AST::Method* native { } -CppSharp::Parser::AST::Method::Method(System::IntPtr native) - : CppSharp::Parser::AST::Function(native) +CppSharp::Parser::AST::Method^ CppSharp::Parser::AST::Method::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::Method*)native.ToPointer(); + return gcnew CppSharp::Parser::AST::Method((::CppSharp::CppParser::AST::Method*) native.ToPointer()); } CppSharp::Parser::AST::Method::Method() @@ -1969,10 +1937,9 @@ CppSharp::Parser::AST::Enumeration::Item::Item(::CppSharp::CppParser::AST::Enume { } -CppSharp::Parser::AST::Enumeration::Item::Item(System::IntPtr native) - : CppSharp::Parser::AST::Declaration(native) +CppSharp::Parser::AST::Enumeration::Item^ CppSharp::Parser::AST::Enumeration::Item::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::Enumeration::Item*)native.ToPointer(); + return gcnew CppSharp::Parser::AST::Enumeration::Item((::CppSharp::CppParser::AST::Enumeration::Item*) native.ToPointer()); } CppSharp::Parser::AST::Enumeration::Item::Item() @@ -2010,10 +1977,9 @@ CppSharp::Parser::AST::Enumeration::Enumeration(::CppSharp::CppParser::AST::Enum { } -CppSharp::Parser::AST::Enumeration::Enumeration(System::IntPtr native) - : CppSharp::Parser::AST::DeclarationContext(native) +CppSharp::Parser::AST::Enumeration^ CppSharp::Parser::AST::Enumeration::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::Enumeration*)native.ToPointer(); + return gcnew CppSharp::Parser::AST::Enumeration((::CppSharp::CppParser::AST::Enumeration*) native.ToPointer()); } CppSharp::Parser::AST::Enumeration::Enumeration() @@ -2081,10 +2047,9 @@ CppSharp::Parser::AST::Variable::Variable(::CppSharp::CppParser::AST::Variable* { } -CppSharp::Parser::AST::Variable::Variable(System::IntPtr native) - : CppSharp::Parser::AST::Declaration(native) +CppSharp::Parser::AST::Variable^ CppSharp::Parser::AST::Variable::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::Variable*)native.ToPointer(); + return gcnew CppSharp::Parser::AST::Variable((::CppSharp::CppParser::AST::Variable*) native.ToPointer()); } CppSharp::Parser::AST::Variable::Variable() @@ -2122,10 +2087,9 @@ CppSharp::Parser::AST::BaseClassSpecifier::BaseClassSpecifier(::CppSharp::CppPar NativePtr = native; } -CppSharp::Parser::AST::BaseClassSpecifier::BaseClassSpecifier(System::IntPtr native) +CppSharp::Parser::AST::BaseClassSpecifier^ CppSharp::Parser::AST::BaseClassSpecifier::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::BaseClassSpecifier*)native.ToPointer(); - NativePtr = __native; + return gcnew CppSharp::Parser::AST::BaseClassSpecifier((::CppSharp::CppParser::AST::BaseClassSpecifier*) native.ToPointer()); } CppSharp::Parser::AST::BaseClassSpecifier::BaseClassSpecifier() @@ -2178,10 +2142,9 @@ CppSharp::Parser::AST::Field::Field(::CppSharp::CppParser::AST::Field* native) { } -CppSharp::Parser::AST::Field::Field(System::IntPtr native) - : CppSharp::Parser::AST::Declaration(native) +CppSharp::Parser::AST::Field^ CppSharp::Parser::AST::Field::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::Field*)native.ToPointer(); + return gcnew CppSharp::Parser::AST::Field((::CppSharp::CppParser::AST::Field*) native.ToPointer()); } CppSharp::Parser::AST::Field::Field() @@ -2225,10 +2188,9 @@ CppSharp::Parser::AST::AccessSpecifierDecl::AccessSpecifierDecl(::CppSharp::CppP { } -CppSharp::Parser::AST::AccessSpecifierDecl::AccessSpecifierDecl(System::IntPtr native) - : CppSharp::Parser::AST::Declaration(native) +CppSharp::Parser::AST::AccessSpecifierDecl^ CppSharp::Parser::AST::AccessSpecifierDecl::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::AccessSpecifierDecl*)native.ToPointer(); + return gcnew CppSharp::Parser::AST::AccessSpecifierDecl((::CppSharp::CppParser::AST::AccessSpecifierDecl*) native.ToPointer()); } CppSharp::Parser::AST::AccessSpecifierDecl::AccessSpecifierDecl() @@ -2242,10 +2204,9 @@ CppSharp::Parser::AST::Class::Class(::CppSharp::CppParser::AST::Class* native) { } -CppSharp::Parser::AST::Class::Class(System::IntPtr native) - : CppSharp::Parser::AST::DeclarationContext(native) +CppSharp::Parser::AST::Class^ CppSharp::Parser::AST::Class::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::Class*)native.ToPointer(); + return gcnew CppSharp::Parser::AST::Class((::CppSharp::CppParser::AST::Class*) native.ToPointer()); } CppSharp::Parser::AST::Class::Class() @@ -2455,10 +2416,9 @@ CppSharp::Parser::AST::Template::Template(::CppSharp::CppParser::AST::Template* { } -CppSharp::Parser::AST::Template::Template(System::IntPtr native) - : CppSharp::Parser::AST::Declaration(native) +CppSharp::Parser::AST::Template^ CppSharp::Parser::AST::Template::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::Template*)native.ToPointer(); + return gcnew CppSharp::Parser::AST::Template((::CppSharp::CppParser::AST::Template*) native.ToPointer()); } CppSharp::Parser::AST::Template::Template(CppSharp::Parser::AST::DeclarationKind kind) @@ -2513,10 +2473,9 @@ CppSharp::Parser::AST::ClassTemplate::ClassTemplate(::CppSharp::CppParser::AST:: { } -CppSharp::Parser::AST::ClassTemplate::ClassTemplate(System::IntPtr native) - : CppSharp::Parser::AST::Template(native) +CppSharp::Parser::AST::ClassTemplate^ CppSharp::Parser::AST::ClassTemplate::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::ClassTemplate*)native.ToPointer(); + return gcnew CppSharp::Parser::AST::ClassTemplate((::CppSharp::CppParser::AST::ClassTemplate*) native.ToPointer()); } CppSharp::Parser::AST::ClassTemplate::ClassTemplate() @@ -2554,10 +2513,9 @@ CppSharp::Parser::AST::ClassTemplateSpecialization::ClassTemplateSpecialization( { } -CppSharp::Parser::AST::ClassTemplateSpecialization::ClassTemplateSpecialization(System::IntPtr native) - : CppSharp::Parser::AST::Class(native) +CppSharp::Parser::AST::ClassTemplateSpecialization^ CppSharp::Parser::AST::ClassTemplateSpecialization::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::ClassTemplateSpecialization*)native.ToPointer(); + return gcnew CppSharp::Parser::AST::ClassTemplateSpecialization((::CppSharp::CppParser::AST::ClassTemplateSpecialization*) native.ToPointer()); } CppSharp::Parser::AST::ClassTemplateSpecialization::ClassTemplateSpecialization() @@ -2615,10 +2573,9 @@ CppSharp::Parser::AST::ClassTemplatePartialSpecialization::ClassTemplatePartialS { } -CppSharp::Parser::AST::ClassTemplatePartialSpecialization::ClassTemplatePartialSpecialization(System::IntPtr native) - : CppSharp::Parser::AST::ClassTemplateSpecialization(native) +CppSharp::Parser::AST::ClassTemplatePartialSpecialization^ CppSharp::Parser::AST::ClassTemplatePartialSpecialization::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::ClassTemplatePartialSpecialization*)native.ToPointer(); + return gcnew CppSharp::Parser::AST::ClassTemplatePartialSpecialization((::CppSharp::CppParser::AST::ClassTemplatePartialSpecialization*) native.ToPointer()); } CppSharp::Parser::AST::ClassTemplatePartialSpecialization::ClassTemplatePartialSpecialization() @@ -2632,10 +2589,9 @@ CppSharp::Parser::AST::FunctionTemplate::FunctionTemplate(::CppSharp::CppParser: { } -CppSharp::Parser::AST::FunctionTemplate::FunctionTemplate(System::IntPtr native) - : CppSharp::Parser::AST::Template(native) +CppSharp::Parser::AST::FunctionTemplate^ CppSharp::Parser::AST::FunctionTemplate::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::FunctionTemplate*)native.ToPointer(); + return gcnew CppSharp::Parser::AST::FunctionTemplate((::CppSharp::CppParser::AST::FunctionTemplate*) native.ToPointer()); } CppSharp::Parser::AST::FunctionTemplate::FunctionTemplate() @@ -2673,10 +2629,9 @@ CppSharp::Parser::AST::FunctionTemplateSpecialization::FunctionTemplateSpecializ NativePtr = native; } -CppSharp::Parser::AST::FunctionTemplateSpecialization::FunctionTemplateSpecialization(System::IntPtr native) +CppSharp::Parser::AST::FunctionTemplateSpecialization^ CppSharp::Parser::AST::FunctionTemplateSpecialization::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::FunctionTemplateSpecialization*)native.ToPointer(); - NativePtr = __native; + return gcnew CppSharp::Parser::AST::FunctionTemplateSpecialization((::CppSharp::CppParser::AST::FunctionTemplateSpecialization*) native.ToPointer()); } CppSharp::Parser::AST::FunctionTemplateSpecialization::FunctionTemplateSpecialization() @@ -2753,10 +2708,9 @@ CppSharp::Parser::AST::Namespace::Namespace(::CppSharp::CppParser::AST::Namespac { } -CppSharp::Parser::AST::Namespace::Namespace(System::IntPtr native) - : CppSharp::Parser::AST::DeclarationContext(native) +CppSharp::Parser::AST::Namespace^ CppSharp::Parser::AST::Namespace::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::Namespace*)native.ToPointer(); + return gcnew CppSharp::Parser::AST::Namespace((::CppSharp::CppParser::AST::Namespace*) native.ToPointer()); } CppSharp::Parser::AST::Namespace::Namespace() @@ -2780,10 +2734,9 @@ CppSharp::Parser::AST::PreprocessedEntity::PreprocessedEntity(::CppSharp::CppPar { } -CppSharp::Parser::AST::PreprocessedEntity::PreprocessedEntity(System::IntPtr native) - : CppSharp::Parser::AST::Declaration(native) +CppSharp::Parser::AST::PreprocessedEntity^ CppSharp::Parser::AST::PreprocessedEntity::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::PreprocessedEntity*)native.ToPointer(); + return gcnew CppSharp::Parser::AST::PreprocessedEntity((::CppSharp::CppParser::AST::PreprocessedEntity*) native.ToPointer()); } CppSharp::Parser::AST::PreprocessedEntity::PreprocessedEntity() @@ -2807,10 +2760,9 @@ CppSharp::Parser::AST::MacroDefinition::MacroDefinition(::CppSharp::CppParser::A { } -CppSharp::Parser::AST::MacroDefinition::MacroDefinition(System::IntPtr native) - : CppSharp::Parser::AST::PreprocessedEntity(native) +CppSharp::Parser::AST::MacroDefinition^ CppSharp::Parser::AST::MacroDefinition::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::MacroDefinition*)native.ToPointer(); + return gcnew CppSharp::Parser::AST::MacroDefinition((::CppSharp::CppParser::AST::MacroDefinition*) native.ToPointer()); } CppSharp::Parser::AST::MacroDefinition::MacroDefinition() @@ -2838,10 +2790,9 @@ CppSharp::Parser::AST::MacroExpansion::MacroExpansion(::CppSharp::CppParser::AST { } -CppSharp::Parser::AST::MacroExpansion::MacroExpansion(System::IntPtr native) - : CppSharp::Parser::AST::PreprocessedEntity(native) +CppSharp::Parser::AST::MacroExpansion^ CppSharp::Parser::AST::MacroExpansion::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::MacroExpansion*)native.ToPointer(); + return gcnew CppSharp::Parser::AST::MacroExpansion((::CppSharp::CppParser::AST::MacroExpansion*) native.ToPointer()); } CppSharp::Parser::AST::MacroExpansion::MacroExpansion() @@ -2879,10 +2830,9 @@ CppSharp::Parser::AST::TranslationUnit::TranslationUnit(::CppSharp::CppParser::A { } -CppSharp::Parser::AST::TranslationUnit::TranslationUnit(System::IntPtr native) - : CppSharp::Parser::AST::Namespace(native) +CppSharp::Parser::AST::TranslationUnit^ CppSharp::Parser::AST::TranslationUnit::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::TranslationUnit*)native.ToPointer(); + return gcnew CppSharp::Parser::AST::TranslationUnit((::CppSharp::CppParser::AST::TranslationUnit*) native.ToPointer()); } CppSharp::Parser::AST::TranslationUnit::TranslationUnit() @@ -2944,10 +2894,9 @@ CppSharp::Parser::AST::NativeLibrary::NativeLibrary(::CppSharp::CppParser::AST:: NativePtr = native; } -CppSharp::Parser::AST::NativeLibrary::NativeLibrary(System::IntPtr native) +CppSharp::Parser::AST::NativeLibrary^ CppSharp::Parser::AST::NativeLibrary::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::NativeLibrary*)native.ToPointer(); - NativePtr = __native; + return gcnew CppSharp::Parser::AST::NativeLibrary((::CppSharp::CppParser::AST::NativeLibrary*) native.ToPointer()); } CppSharp::Parser::AST::NativeLibrary::NativeLibrary() @@ -3044,10 +2993,9 @@ CppSharp::Parser::AST::ASTContext::ASTContext(::CppSharp::CppParser::AST::ASTCon NativePtr = native; } -CppSharp::Parser::AST::ASTContext::ASTContext(System::IntPtr native) +CppSharp::Parser::AST::ASTContext^ CppSharp::Parser::AST::ASTContext::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::ASTContext*)native.ToPointer(); - NativePtr = __native; + return gcnew CppSharp::Parser::AST::ASTContext((::CppSharp::CppParser::AST::ASTContext*) native.ToPointer()); } CppSharp::Parser::AST::ASTContext::ASTContext() @@ -3094,10 +3042,9 @@ CppSharp::Parser::AST::Comment::Comment(::CppSharp::CppParser::AST::Comment* nat NativePtr = native; } -CppSharp::Parser::AST::Comment::Comment(System::IntPtr native) +CppSharp::Parser::AST::Comment^ CppSharp::Parser::AST::Comment::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::Comment*)native.ToPointer(); - NativePtr = __native; + return gcnew CppSharp::Parser::AST::Comment((::CppSharp::CppParser::AST::Comment*) native.ToPointer()); } CppSharp::Parser::AST::Comment::Comment(CppSharp::Parser::AST::CommentKind kind) @@ -3131,10 +3078,9 @@ CppSharp::Parser::AST::FullComment::FullComment(::CppSharp::CppParser::AST::Full { } -CppSharp::Parser::AST::FullComment::FullComment(System::IntPtr native) - : CppSharp::Parser::AST::Comment(native) +CppSharp::Parser::AST::FullComment^ CppSharp::Parser::AST::FullComment::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::FullComment*)native.ToPointer(); + return gcnew CppSharp::Parser::AST::FullComment((::CppSharp::CppParser::AST::FullComment*) native.ToPointer()); } CppSharp::Parser::AST::FullComment::FullComment() @@ -3148,10 +3094,9 @@ CppSharp::Parser::AST::RawComment::RawComment(::CppSharp::CppParser::AST::RawCom NativePtr = native; } -CppSharp::Parser::AST::RawComment::RawComment(System::IntPtr native) +CppSharp::Parser::AST::RawComment^ CppSharp::Parser::AST::RawComment::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::AST::RawComment*)native.ToPointer(); - NativePtr = __native; + return gcnew CppSharp::Parser::AST::RawComment((::CppSharp::CppParser::AST::RawComment*) native.ToPointer()); } CppSharp::Parser::AST::RawComment::RawComment() diff --git a/src/CppParser/Bindings/CLI/AST.h b/src/CppParser/Bindings/CLI/AST.h index 1304843c..5d4b243b 100644 --- a/src/CppParser/Bindings/CLI/AST.h +++ b/src/CppParser/Bindings/CLI/AST.h @@ -314,7 +314,7 @@ namespace CppSharp } Type(::CppSharp::CppParser::AST::Type* native); - Type(System::IntPtr native); + static Type^ __CreateInstance(::System::IntPtr native); Type(CppSharp::Parser::AST::TypeKind kind); property CppSharp::Parser::AST::TypeKind Kind @@ -342,7 +342,7 @@ namespace CppSharp } TypeQualifiers(::CppSharp::CppParser::AST::TypeQualifiers* native); - TypeQualifiers(System::IntPtr native); + static TypeQualifiers^ __CreateInstance(::System::IntPtr native); TypeQualifiers(); property bool IsConst @@ -376,7 +376,7 @@ namespace CppSharp } QualifiedType(::CppSharp::CppParser::AST::QualifiedType* native); - QualifiedType(System::IntPtr native); + static QualifiedType^ __CreateInstance(::System::IntPtr native); QualifiedType(); property CppSharp::Parser::AST::Type^ Type @@ -397,7 +397,7 @@ namespace CppSharp public: TagType(::CppSharp::CppParser::AST::TagType* native); - TagType(System::IntPtr native); + static TagType^ __CreateInstance(::System::IntPtr native); TagType(); property CppSharp::Parser::AST::Declaration^ Declaration @@ -420,7 +420,7 @@ namespace CppSharp }; ArrayType(::CppSharp::CppParser::AST::ArrayType* native); - ArrayType(System::IntPtr native); + static ArrayType^ __CreateInstance(::System::IntPtr native); ArrayType(); property CppSharp::Parser::AST::QualifiedType^ QualifiedType @@ -447,7 +447,7 @@ namespace CppSharp public: FunctionType(::CppSharp::CppParser::AST::FunctionType* native); - FunctionType(System::IntPtr native); + static FunctionType^ __CreateInstance(::System::IntPtr native); FunctionType(); property unsigned int ParametersCount @@ -487,7 +487,7 @@ namespace CppSharp }; PointerType(::CppSharp::CppParser::AST::PointerType* native); - PointerType(System::IntPtr native); + static PointerType^ __CreateInstance(::System::IntPtr native); PointerType(); property CppSharp::Parser::AST::QualifiedType^ QualifiedPointee @@ -508,7 +508,7 @@ namespace CppSharp public: MemberPointerType(::CppSharp::CppParser::AST::MemberPointerType* native); - MemberPointerType(System::IntPtr native); + static MemberPointerType^ __CreateInstance(::System::IntPtr native); MemberPointerType(); property CppSharp::Parser::AST::QualifiedType^ Pointee @@ -523,7 +523,7 @@ namespace CppSharp public: TypedefType(::CppSharp::CppParser::AST::TypedefType* native); - TypedefType(System::IntPtr native); + static TypedefType^ __CreateInstance(::System::IntPtr native); TypedefType(); property CppSharp::Parser::AST::TypedefDecl^ Declaration @@ -538,7 +538,7 @@ namespace CppSharp public: AttributedType(::CppSharp::CppParser::AST::AttributedType* native); - AttributedType(System::IntPtr native); + static AttributedType^ __CreateInstance(::System::IntPtr native); AttributedType(); property CppSharp::Parser::AST::QualifiedType^ Modified @@ -559,7 +559,7 @@ namespace CppSharp public: DecayedType(::CppSharp::CppParser::AST::DecayedType* native); - DecayedType(System::IntPtr native); + static DecayedType^ __CreateInstance(::System::IntPtr native); DecayedType(); property CppSharp::Parser::AST::QualifiedType^ Decayed @@ -605,7 +605,7 @@ namespace CppSharp } TemplateArgument(::CppSharp::CppParser::AST::TemplateArgument* native); - TemplateArgument(System::IntPtr native); + static TemplateArgument^ __CreateInstance(::System::IntPtr native); TemplateArgument(); property CppSharp::Parser::AST::TemplateArgument::ArgumentKind Kind @@ -638,7 +638,7 @@ namespace CppSharp public: TemplateSpecializationType(::CppSharp::CppParser::AST::TemplateSpecializationType* native); - TemplateSpecializationType(System::IntPtr native); + static TemplateSpecializationType^ __CreateInstance(::System::IntPtr native); TemplateSpecializationType(); property unsigned int ArgumentsCount @@ -677,7 +677,7 @@ namespace CppSharp } TemplateParameter(::CppSharp::CppParser::AST::TemplateParameter* native); - TemplateParameter(System::IntPtr native); + static TemplateParameter^ __CreateInstance(::System::IntPtr native); TemplateParameter(); property System::String^ Name @@ -700,7 +700,7 @@ namespace CppSharp public: TemplateParameterType(::CppSharp::CppParser::AST::TemplateParameterType* native); - TemplateParameterType(System::IntPtr native); + static TemplateParameterType^ __CreateInstance(::System::IntPtr native); TemplateParameterType(); property CppSharp::Parser::AST::TemplateParameter^ Parameter @@ -733,7 +733,7 @@ namespace CppSharp public: TemplateParameterSubstitutionType(::CppSharp::CppParser::AST::TemplateParameterSubstitutionType* native); - TemplateParameterSubstitutionType(System::IntPtr native); + static TemplateParameterSubstitutionType^ __CreateInstance(::System::IntPtr native); TemplateParameterSubstitutionType(); property CppSharp::Parser::AST::QualifiedType^ Replacement @@ -748,7 +748,7 @@ namespace CppSharp public: InjectedClassNameType(::CppSharp::CppParser::AST::InjectedClassNameType* native); - InjectedClassNameType(System::IntPtr native); + static InjectedClassNameType^ __CreateInstance(::System::IntPtr native); InjectedClassNameType(); property CppSharp::Parser::AST::TemplateSpecializationType^ TemplateSpecialization @@ -769,7 +769,7 @@ namespace CppSharp public: DependentNameType(::CppSharp::CppParser::AST::DependentNameType* native); - DependentNameType(System::IntPtr native); + static DependentNameType^ __CreateInstance(::System::IntPtr native); DependentNameType(); }; @@ -778,7 +778,7 @@ namespace CppSharp public: PackExpansionType(::CppSharp::CppParser::AST::PackExpansionType* native); - PackExpansionType(System::IntPtr native); + static PackExpansionType^ __CreateInstance(::System::IntPtr native); PackExpansionType(); }; @@ -787,7 +787,7 @@ namespace CppSharp public: BuiltinType(::CppSharp::CppParser::AST::BuiltinType* native); - BuiltinType(System::IntPtr native); + static BuiltinType^ __CreateInstance(::System::IntPtr native); BuiltinType(); property CppSharp::Parser::AST::PrimitiveType Type @@ -809,7 +809,7 @@ namespace CppSharp } VTableComponent(::CppSharp::CppParser::AST::VTableComponent* native); - VTableComponent(System::IntPtr native); + static VTableComponent^ __CreateInstance(::System::IntPtr native); VTableComponent(); property CppSharp::Parser::AST::VTableComponentKind Kind @@ -843,7 +843,7 @@ namespace CppSharp } VTableLayout(::CppSharp::CppParser::AST::VTableLayout* native); - VTableLayout(System::IntPtr native); + static VTableLayout^ __CreateInstance(::System::IntPtr native); VTableLayout(); property unsigned int ComponentsCount @@ -870,7 +870,7 @@ namespace CppSharp } VFTableInfo(::CppSharp::CppParser::AST::VFTableInfo* native); - VFTableInfo(System::IntPtr native); + static VFTableInfo^ __CreateInstance(::System::IntPtr native); VFTableInfo(); property unsigned long long VBTableIndex @@ -910,7 +910,7 @@ namespace CppSharp } ClassLayout(::CppSharp::CppParser::AST::ClassLayout* native); - ClassLayout(System::IntPtr native); + static ClassLayout^ __CreateInstance(::System::IntPtr native); ClassLayout(); property unsigned int VFTablesCount @@ -979,7 +979,7 @@ namespace CppSharp } Declaration(::CppSharp::CppParser::AST::Declaration* native); - Declaration(System::IntPtr native); + static Declaration^ __CreateInstance(::System::IntPtr native); Declaration(CppSharp::Parser::AST::DeclarationKind kind); property System::String^ Name @@ -1053,10 +1053,10 @@ namespace CppSharp void set(unsigned int); } - property void* OriginalPtr + property ::System::IntPtr OriginalPtr { - void* get(); - void set(void*); + ::System::IntPtr get(); + void set(::System::IntPtr); } CppSharp::Parser::AST::PreprocessedEntity^ getPreprocessedEntities(unsigned int i); @@ -1071,7 +1071,7 @@ namespace CppSharp public: DeclarationContext(::CppSharp::CppParser::AST::DeclarationContext* native); - DeclarationContext(System::IntPtr native); + static DeclarationContext^ __CreateInstance(::System::IntPtr native); DeclarationContext(CppSharp::Parser::AST::DeclarationKind kind); property unsigned int NamespacesCount @@ -1163,7 +1163,7 @@ namespace CppSharp public: TypedefDecl(::CppSharp::CppParser::AST::TypedefDecl* native); - TypedefDecl(System::IntPtr native); + static TypedefDecl^ __CreateInstance(::System::IntPtr native); TypedefDecl(); property CppSharp::Parser::AST::QualifiedType^ QualifiedType @@ -1185,7 +1185,7 @@ namespace CppSharp } Statement(::CppSharp::CppParser::AST::Statement* native); - Statement(System::IntPtr native); + static Statement^ __CreateInstance(::System::IntPtr native); property System::String^ String { System::String^ get(); @@ -1210,7 +1210,7 @@ namespace CppSharp public: Expression(::CppSharp::CppParser::AST::Expression* native); - Expression(System::IntPtr native); + static Expression^ __CreateInstance(::System::IntPtr native); }; public ref class Parameter : CppSharp::Parser::AST::Declaration @@ -1218,7 +1218,7 @@ namespace CppSharp public: Parameter(::CppSharp::CppParser::AST::Parameter* native); - Parameter(System::IntPtr native); + static Parameter^ __CreateInstance(::System::IntPtr native); Parameter(); property CppSharp::Parser::AST::QualifiedType^ QualifiedType @@ -1257,7 +1257,7 @@ namespace CppSharp public: Function(::CppSharp::CppParser::AST::Function* native); - Function(System::IntPtr native); + static Function^ __CreateInstance(::System::IntPtr native); Function(); property System::String^ Mangled @@ -1349,7 +1349,7 @@ namespace CppSharp public: Method(::CppSharp::CppParser::AST::Method* native); - Method(System::IntPtr native); + static Method^ __CreateInstance(::System::IntPtr native); Method(); property CppSharp::Parser::AST::AccessSpecifierDecl^ AccessDecl @@ -1442,7 +1442,7 @@ namespace CppSharp public: Item(::CppSharp::CppParser::AST::Enumeration::Item* native); - Item(System::IntPtr native); + static Item^ __CreateInstance(::System::IntPtr native); Item(); property System::String^ Expression @@ -1459,7 +1459,7 @@ namespace CppSharp }; Enumeration(::CppSharp::CppParser::AST::Enumeration* native); - Enumeration(System::IntPtr native); + static Enumeration^ __CreateInstance(::System::IntPtr native); Enumeration(); property unsigned int ItemsCount @@ -1497,7 +1497,7 @@ namespace CppSharp public: Variable(::CppSharp::CppParser::AST::Variable* native); - Variable(System::IntPtr native); + static Variable^ __CreateInstance(::System::IntPtr native); Variable(); property System::String^ Mangled @@ -1525,7 +1525,7 @@ namespace CppSharp } BaseClassSpecifier(::CppSharp::CppParser::AST::BaseClassSpecifier* native); - BaseClassSpecifier(System::IntPtr native); + static BaseClassSpecifier^ __CreateInstance(::System::IntPtr native); BaseClassSpecifier(); property CppSharp::Parser::AST::AccessSpecifier Access @@ -1552,7 +1552,7 @@ namespace CppSharp public: Field(::CppSharp::CppParser::AST::Field* native); - Field(System::IntPtr native); + static Field^ __CreateInstance(::System::IntPtr native); Field(); property CppSharp::Parser::AST::QualifiedType^ QualifiedType @@ -1579,7 +1579,7 @@ namespace CppSharp public: AccessSpecifierDecl(::CppSharp::CppParser::AST::AccessSpecifierDecl* native); - AccessSpecifierDecl(System::IntPtr native); + static AccessSpecifierDecl^ __CreateInstance(::System::IntPtr native); AccessSpecifierDecl(); }; @@ -1588,7 +1588,7 @@ namespace CppSharp public: Class(::CppSharp::CppParser::AST::Class* native); - Class(System::IntPtr native); + static Class^ __CreateInstance(::System::IntPtr native); Class(); property unsigned int BasesCount @@ -1701,7 +1701,7 @@ namespace CppSharp public: Template(::CppSharp::CppParser::AST::Template* native); - Template(System::IntPtr native); + static Template^ __CreateInstance(::System::IntPtr native); Template(CppSharp::Parser::AST::DeclarationKind kind); Template(); @@ -1729,7 +1729,7 @@ namespace CppSharp public: ClassTemplate(::CppSharp::CppParser::AST::ClassTemplate* native); - ClassTemplate(System::IntPtr native); + static ClassTemplate^ __CreateInstance(::System::IntPtr native); ClassTemplate(); property unsigned int SpecializationsCount @@ -1749,7 +1749,7 @@ namespace CppSharp public: ClassTemplateSpecialization(::CppSharp::CppParser::AST::ClassTemplateSpecialization* native); - ClassTemplateSpecialization(System::IntPtr native); + static ClassTemplateSpecialization^ __CreateInstance(::System::IntPtr native); ClassTemplateSpecialization(); property unsigned int ArgumentsCount @@ -1781,7 +1781,7 @@ namespace CppSharp public: ClassTemplatePartialSpecialization(::CppSharp::CppParser::AST::ClassTemplatePartialSpecialization* native); - ClassTemplatePartialSpecialization(System::IntPtr native); + static ClassTemplatePartialSpecialization^ __CreateInstance(::System::IntPtr native); ClassTemplatePartialSpecialization(); }; @@ -1790,7 +1790,7 @@ namespace CppSharp public: FunctionTemplate(::CppSharp::CppParser::AST::FunctionTemplate* native); - FunctionTemplate(System::IntPtr native); + static FunctionTemplate^ __CreateInstance(::System::IntPtr native); FunctionTemplate(); property unsigned int SpecializationsCount @@ -1817,7 +1817,7 @@ namespace CppSharp } FunctionTemplateSpecialization(::CppSharp::CppParser::AST::FunctionTemplateSpecialization* native); - FunctionTemplateSpecialization(System::IntPtr native); + static FunctionTemplateSpecialization^ __CreateInstance(::System::IntPtr native); FunctionTemplateSpecialization(); property unsigned int ArgumentsCount @@ -1855,7 +1855,7 @@ namespace CppSharp public: Namespace(::CppSharp::CppParser::AST::Namespace* native); - Namespace(System::IntPtr native); + static Namespace^ __CreateInstance(::System::IntPtr native); Namespace(); property bool IsInline @@ -1870,7 +1870,7 @@ namespace CppSharp public: PreprocessedEntity(::CppSharp::CppParser::AST::PreprocessedEntity* native); - PreprocessedEntity(System::IntPtr native); + static PreprocessedEntity^ __CreateInstance(::System::IntPtr native); PreprocessedEntity(); property CppSharp::Parser::AST::MacroLocation MacroLocation @@ -1885,7 +1885,7 @@ namespace CppSharp public: MacroDefinition(::CppSharp::CppParser::AST::MacroDefinition* native); - MacroDefinition(System::IntPtr native); + static MacroDefinition^ __CreateInstance(::System::IntPtr native); MacroDefinition(); property System::String^ Expression @@ -1900,7 +1900,7 @@ namespace CppSharp public: MacroExpansion(::CppSharp::CppParser::AST::MacroExpansion* native); - MacroExpansion(System::IntPtr native); + static MacroExpansion^ __CreateInstance(::System::IntPtr native); MacroExpansion(); property System::String^ Text @@ -1921,7 +1921,7 @@ namespace CppSharp public: TranslationUnit(::CppSharp::CppParser::AST::TranslationUnit* native); - TranslationUnit(System::IntPtr native); + static TranslationUnit^ __CreateInstance(::System::IntPtr native); TranslationUnit(); property System::String^ FileName @@ -1960,7 +1960,7 @@ namespace CppSharp } NativeLibrary(::CppSharp::CppParser::AST::NativeLibrary* native); - NativeLibrary(System::IntPtr native); + static NativeLibrary^ __CreateInstance(::System::IntPtr native); NativeLibrary(); property System::String^ FileName @@ -2010,7 +2010,7 @@ namespace CppSharp } ASTContext(::CppSharp::CppParser::AST::ASTContext* native); - ASTContext(System::IntPtr native); + static ASTContext^ __CreateInstance(::System::IntPtr native); ASTContext(); property unsigned int TranslationUnitsCount @@ -2037,7 +2037,7 @@ namespace CppSharp } Comment(::CppSharp::CppParser::AST::Comment* native); - Comment(System::IntPtr native); + static Comment^ __CreateInstance(::System::IntPtr native); Comment(CppSharp::Parser::AST::CommentKind kind); property CppSharp::Parser::AST::CommentKind Kind @@ -2052,7 +2052,7 @@ namespace CppSharp public: FullComment(::CppSharp::CppParser::AST::FullComment* native); - FullComment(System::IntPtr native); + static FullComment^ __CreateInstance(::System::IntPtr native); FullComment(); }; @@ -2068,7 +2068,7 @@ namespace CppSharp } RawComment(::CppSharp::CppParser::AST::RawComment* native); - RawComment(System::IntPtr native); + static RawComment^ __CreateInstance(::System::IntPtr native); RawComment(); property System::String^ Text diff --git a/src/CppParser/Bindings/CLI/CppParser.cpp b/src/CppParser/Bindings/CLI/CppParser.cpp index 413cebb3..3377d407 100644 --- a/src/CppParser/Bindings/CLI/CppParser.cpp +++ b/src/CppParser/Bindings/CLI/CppParser.cpp @@ -10,10 +10,9 @@ CppSharp::Parser::ParserOptions::ParserOptions(::CppSharp::CppParser::ParserOpti NativePtr = native; } -CppSharp::Parser::ParserOptions::ParserOptions(System::IntPtr native) +CppSharp::Parser::ParserOptions^ CppSharp::Parser::ParserOptions::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::ParserOptions*)native.ToPointer(); - NativePtr = __native; + return gcnew CppSharp::Parser::ParserOptions((::CppSharp::CppParser::ParserOptions*) native.ToPointer()); } CppSharp::Parser::ParserOptions::ParserOptions() @@ -294,10 +293,9 @@ CppSharp::Parser::ParserDiagnostic::ParserDiagnostic(::CppSharp::CppParser::Pars NativePtr = native; } -CppSharp::Parser::ParserDiagnostic::ParserDiagnostic(System::IntPtr native) +CppSharp::Parser::ParserDiagnostic^ CppSharp::Parser::ParserDiagnostic::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::ParserDiagnostic*)native.ToPointer(); - NativePtr = __native; + return gcnew CppSharp::Parser::ParserDiagnostic((::CppSharp::CppParser::ParserDiagnostic*) native.ToPointer()); } CppSharp::Parser::ParserDiagnostic::ParserDiagnostic() @@ -378,10 +376,9 @@ CppSharp::Parser::ParserResult::ParserResult(::CppSharp::CppParser::ParserResult NativePtr = native; } -CppSharp::Parser::ParserResult::ParserResult(System::IntPtr native) +CppSharp::Parser::ParserResult^ CppSharp::Parser::ParserResult::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::ParserResult*)native.ToPointer(); - NativePtr = __native; + return gcnew CppSharp::Parser::ParserResult((::CppSharp::CppParser::ParserResult*) native.ToPointer()); } CppSharp::Parser::ParserResult::ParserResult() @@ -458,10 +455,9 @@ CppSharp::Parser::ClangParser::ClangParser(::CppSharp::CppParser::ClangParser* n NativePtr = native; } -CppSharp::Parser::ClangParser::ClangParser(System::IntPtr native) +CppSharp::Parser::ClangParser^ CppSharp::Parser::ClangParser::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::ClangParser*)native.ToPointer(); - NativePtr = __native; + return gcnew CppSharp::Parser::ClangParser((::CppSharp::CppParser::ClangParser*) native.ToPointer()); } CppSharp::Parser::ParserResult^ CppSharp::Parser::ClangParser::ParseHeader(CppSharp::Parser::ParserOptions^ Opts) diff --git a/src/CppParser/Bindings/CLI/CppParser.h b/src/CppParser/Bindings/CLI/CppParser.h index 4f737172..93d05155 100644 --- a/src/CppParser/Bindings/CLI/CppParser.h +++ b/src/CppParser/Bindings/CLI/CppParser.h @@ -77,7 +77,7 @@ namespace CppSharp } ParserOptions(::CppSharp::CppParser::ParserOptions* native); - ParserOptions(System::IntPtr native); + static ParserOptions^ __CreateInstance(::System::IntPtr native); ParserOptions(); property unsigned int ArgumentsCount @@ -219,7 +219,7 @@ namespace CppSharp } ParserDiagnostic(::CppSharp::CppParser::ParserDiagnostic* native); - ParserDiagnostic(System::IntPtr native); + static ParserDiagnostic^ __CreateInstance(::System::IntPtr native); ParserDiagnostic(); property System::String^ FileName @@ -265,7 +265,7 @@ namespace CppSharp } ParserResult(::CppSharp::CppParser::ParserResult* native); - ParserResult(System::IntPtr native); + static ParserResult^ __CreateInstance(::System::IntPtr native); ParserResult(); property unsigned int DiagnosticsCount @@ -310,7 +310,7 @@ namespace CppSharp } ClangParser(::CppSharp::CppParser::ClangParser* native); - ClangParser(System::IntPtr native); + static ClangParser^ __CreateInstance(::System::IntPtr native); ClangParser(); static CppSharp::Parser::ParserResult^ ParseHeader(CppSharp::Parser::ParserOptions^ Opts); diff --git a/src/CppParser/Bindings/CLI/Sources.cpp b/src/CppParser/Bindings/CLI/Sources.cpp index f4171bd4..f0cfd168 100644 --- a/src/CppParser/Bindings/CLI/Sources.cpp +++ b/src/CppParser/Bindings/CLI/Sources.cpp @@ -8,10 +8,9 @@ CppSharp::Parser::SourceLocation::SourceLocation(::CppSharp::CppParser::SourceLo __ID = native->ID; } -CppSharp::Parser::SourceLocation::SourceLocation(System::IntPtr native) +CppSharp::Parser::SourceLocation^ CppSharp::Parser::SourceLocation::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::SourceLocation*)native.ToPointer(); - __ID = __native->ID; + return gcnew CppSharp::Parser::SourceLocation((::CppSharp::CppParser::SourceLocation*) native.ToPointer()); } CppSharp::Parser::SourceLocation::SourceLocation(unsigned int ID) diff --git a/src/CppParser/Bindings/CLI/Sources.h b/src/CppParser/Bindings/CLI/Sources.h index cc5a639c..0e94f382 100644 --- a/src/CppParser/Bindings/CLI/Sources.h +++ b/src/CppParser/Bindings/CLI/Sources.h @@ -20,7 +20,7 @@ namespace CppSharp public: SourceLocation(::CppSharp::CppParser::SourceLocation* native); - SourceLocation(System::IntPtr native); + static SourceLocation^ __CreateInstance(::System::IntPtr native); SourceLocation(unsigned int ID); property unsigned int ID diff --git a/src/CppParser/Bindings/CLI/Target.cpp b/src/CppParser/Bindings/CLI/Target.cpp index 316a2423..19475bc3 100644 --- a/src/CppParser/Bindings/CLI/Target.cpp +++ b/src/CppParser/Bindings/CLI/Target.cpp @@ -8,10 +8,9 @@ CppSharp::Parser::ParserTargetInfo::ParserTargetInfo(::CppSharp::CppParser::Pars NativePtr = native; } -CppSharp::Parser::ParserTargetInfo::ParserTargetInfo(System::IntPtr native) +CppSharp::Parser::ParserTargetInfo^ CppSharp::Parser::ParserTargetInfo::__CreateInstance(::System::IntPtr native) { - auto __native = (::CppSharp::CppParser::ParserTargetInfo*)native.ToPointer(); - NativePtr = __native; + return gcnew CppSharp::Parser::ParserTargetInfo((::CppSharp::CppParser::ParserTargetInfo*) native.ToPointer()); } CppSharp::Parser::ParserTargetInfo::ParserTargetInfo() diff --git a/src/CppParser/Bindings/CLI/Target.h b/src/CppParser/Bindings/CLI/Target.h index d1ffa92b..25e02210 100644 --- a/src/CppParser/Bindings/CLI/Target.h +++ b/src/CppParser/Bindings/CLI/Target.h @@ -43,7 +43,7 @@ namespace CppSharp } ParserTargetInfo(::CppSharp::CppParser::ParserTargetInfo* native); - ParserTargetInfo(System::IntPtr native); + static ParserTargetInfo^ __CreateInstance(::System::IntPtr native); ParserTargetInfo(); property System::String^ ABI diff --git a/src/Generator/Generators/CLI/CLIHeadersTemplate.cs b/src/Generator/Generators/CLI/CLIHeadersTemplate.cs index a6fdf83f..21c1d5f4 100644 --- a/src/Generator/Generators/CLI/CLIHeadersTemplate.cs +++ b/src/Generator/Generators/CLI/CLIHeadersTemplate.cs @@ -368,6 +368,7 @@ namespace CppSharp.Generators.CLI // Output a default constructor that takes the native pointer. WriteLine("{0}({1} native);", @class.Name, nativeType); + WriteLine("static {0}^ {1}(::System::IntPtr native);", @class.Name, Helpers.CreateInstanceIdentifier); foreach (var ctor in @class.Constructors) { diff --git a/src/Generator/Generators/CLI/CLISourcesTemplate.cs b/src/Generator/Generators/CLI/CLISourcesTemplate.cs index 3833b7d5..101dcc04 100644 --- a/src/Generator/Generators/CLI/CLISourcesTemplate.cs +++ b/src/Generator/Generators/CLI/CLISourcesTemplate.cs @@ -612,7 +612,9 @@ namespace CppSharp.Generators.CLI private void GenerateClassConstructor(Class @class) { - Write("{0}::{1}(", QualifiedIdentifier(@class), @class.Name); + string qualifiedIdentifier = QualifiedIdentifier(@class); + + Write("{0}::{1}(", qualifiedIdentifier, @class.Name); var nativeType = string.Format("::{0}*", @class.QualifiedOriginalName); WriteLine("{0} native)", nativeType); @@ -637,6 +639,13 @@ namespace CppSharp.Generators.CLI WriteCloseBraceIndent(); NewLine(); + + WriteLine("{0}^ {0}::{1}(::System::IntPtr native)", qualifiedIdentifier, Helpers.CreateInstanceIdentifier); + + WriteStartBraceIndent(); + WriteLine("return gcnew {0}(({1}) native.ToPointer());", qualifiedIdentifier, nativeType); + WriteCloseBraceIndent(); + NewLine(); } private void GenerateStructMarshaling(Class @class, string nativeVar) diff --git a/tests/CLITemp/CLITemp.Tests.cs b/tests/CLITemp/CLITemp.Tests.cs index 5a58778a..a2753cd9 100644 --- a/tests/CLITemp/CLITemp.Tests.cs +++ b/tests/CLITemp/CLITemp.Tests.cs @@ -23,6 +23,6 @@ public class CLITests : GeneratorTestFixture [Test] public void TestStdString() { - Assert.AreEqual("test_test", CLITemp.CLITemp.testStdString("test")); + Assert.AreEqual("test_test", new Date(0, 0, 0).testStdString("test")); } } \ No newline at end of file diff --git a/tests/CLITemp/CLITemp.cpp b/tests/CLITemp/CLITemp.cpp index 7ab0c26d..aa208561 100644 --- a/tests/CLITemp/CLITemp.cpp +++ b/tests/CLITemp/CLITemp.cpp @@ -5,7 +5,7 @@ int Types::AttributedSum(int A, int B) return A + B; } -std::string testStdString(std::string s) +std::string Date::testStdString(std::string s) { return s + "_test"; } diff --git a/tests/CLITemp/CLITemp.h b/tests/CLITemp/CLITemp.h index 038bbd01..13f3f053 100644 --- a/tests/CLITemp/CLITemp.h +++ b/tests/CLITemp/CLITemp.h @@ -38,6 +38,8 @@ public: // Not picked up by parser yet //friend std::ostream& operator<<(std::ostream& os, const Date& dt); int mo, da, yr; + + std::string testStdString(std::string s); }; std::ostream& operator<<(std::ostream& os, const Date& dt) @@ -45,5 +47,3 @@ std::ostream& operator<<(std::ostream& os, const Date& dt) os << dt.mo << '/' << dt.da << '/' << dt.yr; return os; } - -DLL_API std::string testStdString(std::string s);