зеркало из https://github.com/mono/CppSharp.git
Add built-in compilation of extra symbols
Fixes https://github.com/mono/CppSharp/issues/1456 and https://github.com/mono/CppSharp/issues/1253. Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
This commit is contained in:
Родитель
1e60113327
Коммит
3aab30f572
|
@ -42,6 +42,7 @@ function SetupLLVMIncludes()
|
|||
includedirs
|
||||
{
|
||||
path.join(LLVMRootDirDebug, "include"),
|
||||
path.join(LLVMRootDirDebug, "lld/include"),
|
||||
path.join(LLVMRootDirDebug, "clang/include"),
|
||||
path.join(LLVMRootDirDebug, "clang/lib"),
|
||||
path.join(LLVMRootDirDebug, "build/include"),
|
||||
|
@ -52,6 +53,7 @@ function SetupLLVMIncludes()
|
|||
includedirs
|
||||
{
|
||||
path.join(LLVMRootDirRelease, "include"),
|
||||
path.join(LLVMRootDirRelease, "lld/include"),
|
||||
path.join(LLVMRootDirRelease, "clang/include"),
|
||||
path.join(LLVMRootDirRelease, "clang/lib"),
|
||||
path.join(LLVMRootDirRelease, "build/include"),
|
||||
|
@ -62,6 +64,7 @@ function SetupLLVMIncludes()
|
|||
includedirs
|
||||
{
|
||||
path.join(LLVMRootDir, "include"),
|
||||
path.join(LLVMRootDir, "lld/include"),
|
||||
path.join(LLVMRootDir, "clang/include"),
|
||||
path.join(LLVMRootDir, "clang/lib"),
|
||||
path.join(LLVMBuildDir, "include"),
|
||||
|
@ -195,7 +198,16 @@ function SetupLLVMLibs()
|
|||
"LLVMDebugInfoMSF",
|
||||
"LLVMBinaryFormat",
|
||||
"LLVMSupport",
|
||||
"LLVMDemangle"
|
||||
"LLVMDemangle",
|
||||
"lldCommon",
|
||||
"lldCore",
|
||||
"lldCOFF",
|
||||
"lldELF",
|
||||
"lldDriver",
|
||||
"lldReaderWriter",
|
||||
"lldYAML",
|
||||
"lldMachO",
|
||||
"lldMachOOld"
|
||||
}
|
||||
|
||||
filter(c)
|
||||
|
|
|
@ -10,7 +10,8 @@ namespace CppSharp.AST
|
|||
{
|
||||
var parts = targetTriple.Split('-');
|
||||
return parts.Contains("windows") ||
|
||||
parts.Contains("win32") || parts.Contains("win64");
|
||||
parts.Contains("win32") || parts.Contains("win64") ||
|
||||
parts.Any(p => p.StartsWith("mingw"));
|
||||
}
|
||||
|
||||
public static bool IsMacOS(this string targetTriple)
|
||||
|
|
|
@ -64,6 +64,25 @@ void CppSharp::Parser::CppParserOptions::ClearArguments()
|
|||
((struct ::CppSharp::CppParser::CppParserOptions*)NativePtr)->clearArguments();
|
||||
}
|
||||
|
||||
::System::String^ CppSharp::Parser::CppParserOptions::GetCompilationOptions(unsigned int i)
|
||||
{
|
||||
auto __ret = ((struct ::CppSharp::CppParser::CppParserOptions*)NativePtr)->getCompilationOptions(i);
|
||||
if (__ret == nullptr) return nullptr;
|
||||
return (__ret == 0 ? nullptr : clix::marshalString<clix::E_UTF8>(__ret));
|
||||
}
|
||||
|
||||
void CppSharp::Parser::CppParserOptions::AddCompilationOptions(::System::String^ s)
|
||||
{
|
||||
auto ___arg0 = clix::marshalString<clix::E_UTF8>(s);
|
||||
auto __arg0 = ___arg0.c_str();
|
||||
((struct ::CppSharp::CppParser::CppParserOptions*)NativePtr)->addCompilationOptions(__arg0);
|
||||
}
|
||||
|
||||
void CppSharp::Parser::CppParserOptions::ClearCompilationOptions()
|
||||
{
|
||||
((struct ::CppSharp::CppParser::CppParserOptions*)NativePtr)->clearCompilationOptions();
|
||||
}
|
||||
|
||||
::System::String^ CppSharp::Parser::CppParserOptions::GetSourceFiles(unsigned int i)
|
||||
{
|
||||
auto __ret = ((struct ::CppSharp::CppParser::CppParserOptions*)NativePtr)->getSourceFiles(i);
|
||||
|
@ -220,6 +239,29 @@ void CppSharp::Parser::CppParserOptions::Arguments::set(::System::Collections::G
|
|||
((struct ::CppSharp::CppParser::CppParserOptions*)NativePtr)->Arguments = _tmpvalue;
|
||||
}
|
||||
|
||||
::System::Collections::Generic::List<::System::String^>^ CppSharp::Parser::CppParserOptions::CompilationOptions::get()
|
||||
{
|
||||
auto _tmp__CompilationOptions = gcnew ::System::Collections::Generic::List<::System::String^>();
|
||||
auto __list0 = NativePtr->CompilationOptions;
|
||||
for(auto _element : __list0)
|
||||
{
|
||||
auto _marshalElement = clix::marshalString<clix::E_UTF8>(_element);
|
||||
_tmp__CompilationOptions->Add(_marshalElement);
|
||||
}
|
||||
return _tmp__CompilationOptions;
|
||||
}
|
||||
|
||||
void CppSharp::Parser::CppParserOptions::CompilationOptions::set(::System::Collections::Generic::List<::System::String^>^ value)
|
||||
{
|
||||
auto _tmpvalue = std::vector<::std::string>();
|
||||
for each(::System::String^ _element in value)
|
||||
{
|
||||
auto _marshalElement = clix::marshalString<clix::E_UTF8>(_element);
|
||||
_tmpvalue.push_back(_marshalElement);
|
||||
}
|
||||
((struct ::CppSharp::CppParser::CppParserOptions*)NativePtr)->CompilationOptions = _tmpvalue;
|
||||
}
|
||||
|
||||
::System::Collections::Generic::List<::System::String^>^ CppSharp::Parser::CppParserOptions::SourceFiles::get()
|
||||
{
|
||||
auto _tmp__SourceFiles = gcnew ::System::Collections::Generic::List<::System::String^>();
|
||||
|
@ -480,6 +522,12 @@ unsigned int CppSharp::Parser::CppParserOptions::ArgumentsCount::get()
|
|||
return __ret;
|
||||
}
|
||||
|
||||
unsigned int CppSharp::Parser::CppParserOptions::CompilationOptionsCount::get()
|
||||
{
|
||||
auto __ret = ((struct ::CppSharp::CppParser::CppParserOptions*)NativePtr)->getCompilationOptionsCount();
|
||||
return __ret;
|
||||
}
|
||||
|
||||
unsigned int CppSharp::Parser::CppParserOptions::SourceFilesCount::get()
|
||||
{
|
||||
auto __ret = ((struct ::CppSharp::CppParser::CppParserOptions*)NativePtr)->getSourceFilesCount();
|
||||
|
@ -516,116 +564,116 @@ unsigned int CppSharp::Parser::CppParserOptions::SupportedStdTypesCount::get()
|
|||
return __ret;
|
||||
}
|
||||
|
||||
CppSharp::Parser::LinkerOptions::LinkerOptions(struct ::CppSharp::CppParser::LinkerOptions* native)
|
||||
CppSharp::Parser::CppLinkerOptions::CppLinkerOptions(struct ::CppSharp::CppParser::CppLinkerOptions* native)
|
||||
: __ownsNativeInstance(false)
|
||||
{
|
||||
NativePtr = native;
|
||||
}
|
||||
|
||||
CppSharp::Parser::LinkerOptions^ CppSharp::Parser::LinkerOptions::__CreateInstance(::System::IntPtr native)
|
||||
CppSharp::Parser::CppLinkerOptions^ CppSharp::Parser::CppLinkerOptions::__CreateInstance(::System::IntPtr native)
|
||||
{
|
||||
return gcnew ::CppSharp::Parser::LinkerOptions((struct ::CppSharp::CppParser::LinkerOptions*) native.ToPointer());
|
||||
return gcnew ::CppSharp::Parser::CppLinkerOptions((struct ::CppSharp::CppParser::CppLinkerOptions*) native.ToPointer());
|
||||
}
|
||||
|
||||
CppSharp::Parser::LinkerOptions::LinkerOptions(struct ::CppSharp::CppParser::LinkerOptions* native, bool ownNativeInstance)
|
||||
CppSharp::Parser::CppLinkerOptions::CppLinkerOptions(struct ::CppSharp::CppParser::CppLinkerOptions* native, bool ownNativeInstance)
|
||||
: __ownsNativeInstance(ownNativeInstance)
|
||||
{
|
||||
NativePtr = native;
|
||||
}
|
||||
|
||||
CppSharp::Parser::LinkerOptions^ CppSharp::Parser::LinkerOptions::__CreateInstance(::System::IntPtr native, bool __ownsNativeInstance)
|
||||
CppSharp::Parser::CppLinkerOptions^ CppSharp::Parser::CppLinkerOptions::__CreateInstance(::System::IntPtr native, bool __ownsNativeInstance)
|
||||
{
|
||||
return gcnew ::CppSharp::Parser::LinkerOptions((struct ::CppSharp::CppParser::LinkerOptions*) native.ToPointer(), __ownsNativeInstance);
|
||||
return gcnew ::CppSharp::Parser::CppLinkerOptions((struct ::CppSharp::CppParser::CppLinkerOptions*) native.ToPointer(), __ownsNativeInstance);
|
||||
}
|
||||
|
||||
CppSharp::Parser::LinkerOptions::~LinkerOptions()
|
||||
CppSharp::Parser::CppLinkerOptions::~CppLinkerOptions()
|
||||
{
|
||||
delete NativePtr;
|
||||
}
|
||||
|
||||
CppSharp::Parser::LinkerOptions::LinkerOptions()
|
||||
CppSharp::Parser::CppLinkerOptions::CppLinkerOptions()
|
||||
{
|
||||
__ownsNativeInstance = true;
|
||||
NativePtr = new struct ::CppSharp::CppParser::LinkerOptions();
|
||||
NativePtr = new struct ::CppSharp::CppParser::CppLinkerOptions();
|
||||
}
|
||||
|
||||
::System::String^ CppSharp::Parser::LinkerOptions::GetArguments(unsigned int i)
|
||||
::System::String^ CppSharp::Parser::CppLinkerOptions::GetArguments(unsigned int i)
|
||||
{
|
||||
auto __ret = ((struct ::CppSharp::CppParser::LinkerOptions*)NativePtr)->getArguments(i);
|
||||
auto __ret = ((struct ::CppSharp::CppParser::CppLinkerOptions*)NativePtr)->getArguments(i);
|
||||
if (__ret == nullptr) return nullptr;
|
||||
return (__ret == 0 ? nullptr : clix::marshalString<clix::E_UTF8>(__ret));
|
||||
}
|
||||
|
||||
void CppSharp::Parser::LinkerOptions::AddArguments(::System::String^ s)
|
||||
void CppSharp::Parser::CppLinkerOptions::AddArguments(::System::String^ s)
|
||||
{
|
||||
auto ___arg0 = clix::marshalString<clix::E_UTF8>(s);
|
||||
auto __arg0 = ___arg0.c_str();
|
||||
((struct ::CppSharp::CppParser::LinkerOptions*)NativePtr)->addArguments(__arg0);
|
||||
((struct ::CppSharp::CppParser::CppLinkerOptions*)NativePtr)->addArguments(__arg0);
|
||||
}
|
||||
|
||||
void CppSharp::Parser::LinkerOptions::ClearArguments()
|
||||
void CppSharp::Parser::CppLinkerOptions::ClearArguments()
|
||||
{
|
||||
((struct ::CppSharp::CppParser::LinkerOptions*)NativePtr)->clearArguments();
|
||||
((struct ::CppSharp::CppParser::CppLinkerOptions*)NativePtr)->clearArguments();
|
||||
}
|
||||
|
||||
::System::String^ CppSharp::Parser::LinkerOptions::GetLibraryDirs(unsigned int i)
|
||||
::System::String^ CppSharp::Parser::CppLinkerOptions::GetLibraryDirs(unsigned int i)
|
||||
{
|
||||
auto __ret = ((struct ::CppSharp::CppParser::LinkerOptions*)NativePtr)->getLibraryDirs(i);
|
||||
auto __ret = ((struct ::CppSharp::CppParser::CppLinkerOptions*)NativePtr)->getLibraryDirs(i);
|
||||
if (__ret == nullptr) return nullptr;
|
||||
return (__ret == 0 ? nullptr : clix::marshalString<clix::E_UTF8>(__ret));
|
||||
}
|
||||
|
||||
void CppSharp::Parser::LinkerOptions::AddLibraryDirs(::System::String^ s)
|
||||
void CppSharp::Parser::CppLinkerOptions::AddLibraryDirs(::System::String^ s)
|
||||
{
|
||||
auto ___arg0 = clix::marshalString<clix::E_UTF8>(s);
|
||||
auto __arg0 = ___arg0.c_str();
|
||||
((struct ::CppSharp::CppParser::LinkerOptions*)NativePtr)->addLibraryDirs(__arg0);
|
||||
((struct ::CppSharp::CppParser::CppLinkerOptions*)NativePtr)->addLibraryDirs(__arg0);
|
||||
}
|
||||
|
||||
void CppSharp::Parser::LinkerOptions::ClearLibraryDirs()
|
||||
void CppSharp::Parser::CppLinkerOptions::ClearLibraryDirs()
|
||||
{
|
||||
((struct ::CppSharp::CppParser::LinkerOptions*)NativePtr)->clearLibraryDirs();
|
||||
((struct ::CppSharp::CppParser::CppLinkerOptions*)NativePtr)->clearLibraryDirs();
|
||||
}
|
||||
|
||||
::System::String^ CppSharp::Parser::LinkerOptions::GetLibraries(unsigned int i)
|
||||
::System::String^ CppSharp::Parser::CppLinkerOptions::GetLibraries(unsigned int i)
|
||||
{
|
||||
auto __ret = ((struct ::CppSharp::CppParser::LinkerOptions*)NativePtr)->getLibraries(i);
|
||||
auto __ret = ((struct ::CppSharp::CppParser::CppLinkerOptions*)NativePtr)->getLibraries(i);
|
||||
if (__ret == nullptr) return nullptr;
|
||||
return (__ret == 0 ? nullptr : clix::marshalString<clix::E_UTF8>(__ret));
|
||||
}
|
||||
|
||||
void CppSharp::Parser::LinkerOptions::AddLibraries(::System::String^ s)
|
||||
void CppSharp::Parser::CppLinkerOptions::AddLibraries(::System::String^ s)
|
||||
{
|
||||
auto ___arg0 = clix::marshalString<clix::E_UTF8>(s);
|
||||
auto __arg0 = ___arg0.c_str();
|
||||
((struct ::CppSharp::CppParser::LinkerOptions*)NativePtr)->addLibraries(__arg0);
|
||||
((struct ::CppSharp::CppParser::CppLinkerOptions*)NativePtr)->addLibraries(__arg0);
|
||||
}
|
||||
|
||||
void CppSharp::Parser::LinkerOptions::ClearLibraries()
|
||||
void CppSharp::Parser::CppLinkerOptions::ClearLibraries()
|
||||
{
|
||||
((struct ::CppSharp::CppParser::LinkerOptions*)NativePtr)->clearLibraries();
|
||||
((struct ::CppSharp::CppParser::CppLinkerOptions*)NativePtr)->clearLibraries();
|
||||
}
|
||||
|
||||
CppSharp::Parser::LinkerOptions::LinkerOptions(CppSharp::Parser::LinkerOptions^ _0)
|
||||
CppSharp::Parser::CppLinkerOptions::CppLinkerOptions(CppSharp::Parser::CppLinkerOptions^ _0)
|
||||
{
|
||||
__ownsNativeInstance = true;
|
||||
if (ReferenceEquals(_0, nullptr))
|
||||
throw gcnew ::System::ArgumentNullException("_0", "Cannot be null because it is a C++ reference (&).");
|
||||
auto &__arg0 = *(struct ::CppSharp::CppParser::LinkerOptions*)_0->NativePtr;
|
||||
NativePtr = new struct ::CppSharp::CppParser::LinkerOptions(__arg0);
|
||||
auto &__arg0 = *(struct ::CppSharp::CppParser::CppLinkerOptions*)_0->NativePtr;
|
||||
NativePtr = new struct ::CppSharp::CppParser::CppLinkerOptions(__arg0);
|
||||
}
|
||||
|
||||
::System::IntPtr CppSharp::Parser::LinkerOptions::__Instance::get()
|
||||
::System::IntPtr CppSharp::Parser::CppLinkerOptions::__Instance::get()
|
||||
{
|
||||
return ::System::IntPtr(NativePtr);
|
||||
}
|
||||
|
||||
void CppSharp::Parser::LinkerOptions::__Instance::set(::System::IntPtr object)
|
||||
void CppSharp::Parser::CppLinkerOptions::__Instance::set(::System::IntPtr object)
|
||||
{
|
||||
NativePtr = (struct ::CppSharp::CppParser::LinkerOptions*)object.ToPointer();
|
||||
NativePtr = (struct ::CppSharp::CppParser::CppLinkerOptions*)object.ToPointer();
|
||||
}
|
||||
|
||||
::System::Collections::Generic::List<::System::String^>^ CppSharp::Parser::LinkerOptions::Arguments::get()
|
||||
::System::Collections::Generic::List<::System::String^>^ CppSharp::Parser::CppLinkerOptions::Arguments::get()
|
||||
{
|
||||
auto _tmp__Arguments = gcnew ::System::Collections::Generic::List<::System::String^>();
|
||||
auto __list0 = NativePtr->Arguments;
|
||||
|
@ -637,7 +685,7 @@ void CppSharp::Parser::LinkerOptions::__Instance::set(::System::IntPtr object)
|
|||
return _tmp__Arguments;
|
||||
}
|
||||
|
||||
void CppSharp::Parser::LinkerOptions::Arguments::set(::System::Collections::Generic::List<::System::String^>^ value)
|
||||
void CppSharp::Parser::CppLinkerOptions::Arguments::set(::System::Collections::Generic::List<::System::String^>^ value)
|
||||
{
|
||||
auto _tmpvalue = std::vector<::std::string>();
|
||||
for each(::System::String^ _element in value)
|
||||
|
@ -645,10 +693,10 @@ void CppSharp::Parser::LinkerOptions::Arguments::set(::System::Collections::Gene
|
|||
auto _marshalElement = clix::marshalString<clix::E_UTF8>(_element);
|
||||
_tmpvalue.push_back(_marshalElement);
|
||||
}
|
||||
((struct ::CppSharp::CppParser::LinkerOptions*)NativePtr)->Arguments = _tmpvalue;
|
||||
((struct ::CppSharp::CppParser::CppLinkerOptions*)NativePtr)->Arguments = _tmpvalue;
|
||||
}
|
||||
|
||||
::System::Collections::Generic::List<::System::String^>^ CppSharp::Parser::LinkerOptions::LibraryDirs::get()
|
||||
::System::Collections::Generic::List<::System::String^>^ CppSharp::Parser::CppLinkerOptions::LibraryDirs::get()
|
||||
{
|
||||
auto _tmp__LibraryDirs = gcnew ::System::Collections::Generic::List<::System::String^>();
|
||||
auto __list0 = NativePtr->LibraryDirs;
|
||||
|
@ -660,7 +708,7 @@ void CppSharp::Parser::LinkerOptions::Arguments::set(::System::Collections::Gene
|
|||
return _tmp__LibraryDirs;
|
||||
}
|
||||
|
||||
void CppSharp::Parser::LinkerOptions::LibraryDirs::set(::System::Collections::Generic::List<::System::String^>^ value)
|
||||
void CppSharp::Parser::CppLinkerOptions::LibraryDirs::set(::System::Collections::Generic::List<::System::String^>^ value)
|
||||
{
|
||||
auto _tmpvalue = std::vector<::std::string>();
|
||||
for each(::System::String^ _element in value)
|
||||
|
@ -668,10 +716,10 @@ void CppSharp::Parser::LinkerOptions::LibraryDirs::set(::System::Collections::Ge
|
|||
auto _marshalElement = clix::marshalString<clix::E_UTF8>(_element);
|
||||
_tmpvalue.push_back(_marshalElement);
|
||||
}
|
||||
((struct ::CppSharp::CppParser::LinkerOptions*)NativePtr)->LibraryDirs = _tmpvalue;
|
||||
((struct ::CppSharp::CppParser::CppLinkerOptions*)NativePtr)->LibraryDirs = _tmpvalue;
|
||||
}
|
||||
|
||||
::System::Collections::Generic::List<::System::String^>^ CppSharp::Parser::LinkerOptions::Libraries::get()
|
||||
::System::Collections::Generic::List<::System::String^>^ CppSharp::Parser::CppLinkerOptions::Libraries::get()
|
||||
{
|
||||
auto _tmp__Libraries = gcnew ::System::Collections::Generic::List<::System::String^>();
|
||||
auto __list0 = NativePtr->Libraries;
|
||||
|
@ -683,7 +731,7 @@ void CppSharp::Parser::LinkerOptions::LibraryDirs::set(::System::Collections::Ge
|
|||
return _tmp__Libraries;
|
||||
}
|
||||
|
||||
void CppSharp::Parser::LinkerOptions::Libraries::set(::System::Collections::Generic::List<::System::String^>^ value)
|
||||
void CppSharp::Parser::CppLinkerOptions::Libraries::set(::System::Collections::Generic::List<::System::String^>^ value)
|
||||
{
|
||||
auto _tmpvalue = std::vector<::std::string>();
|
||||
for each(::System::String^ _element in value)
|
||||
|
@ -691,24 +739,24 @@ void CppSharp::Parser::LinkerOptions::Libraries::set(::System::Collections::Gene
|
|||
auto _marshalElement = clix::marshalString<clix::E_UTF8>(_element);
|
||||
_tmpvalue.push_back(_marshalElement);
|
||||
}
|
||||
((struct ::CppSharp::CppParser::LinkerOptions*)NativePtr)->Libraries = _tmpvalue;
|
||||
((struct ::CppSharp::CppParser::CppLinkerOptions*)NativePtr)->Libraries = _tmpvalue;
|
||||
}
|
||||
|
||||
unsigned int CppSharp::Parser::LinkerOptions::ArgumentsCount::get()
|
||||
unsigned int CppSharp::Parser::CppLinkerOptions::ArgumentsCount::get()
|
||||
{
|
||||
auto __ret = ((struct ::CppSharp::CppParser::LinkerOptions*)NativePtr)->getArgumentsCount();
|
||||
auto __ret = ((struct ::CppSharp::CppParser::CppLinkerOptions*)NativePtr)->getArgumentsCount();
|
||||
return __ret;
|
||||
}
|
||||
|
||||
unsigned int CppSharp::Parser::LinkerOptions::LibraryDirsCount::get()
|
||||
unsigned int CppSharp::Parser::CppLinkerOptions::LibraryDirsCount::get()
|
||||
{
|
||||
auto __ret = ((struct ::CppSharp::CppParser::LinkerOptions*)NativePtr)->getLibraryDirsCount();
|
||||
auto __ret = ((struct ::CppSharp::CppParser::CppLinkerOptions*)NativePtr)->getLibraryDirsCount();
|
||||
return __ret;
|
||||
}
|
||||
|
||||
unsigned int CppSharp::Parser::LinkerOptions::LibrariesCount::get()
|
||||
unsigned int CppSharp::Parser::CppLinkerOptions::LibrariesCount::get()
|
||||
{
|
||||
auto __ret = ((struct ::CppSharp::CppParser::LinkerOptions*)NativePtr)->getLibrariesCount();
|
||||
auto __ret = ((struct ::CppSharp::CppParser::CppLinkerOptions*)NativePtr)->getLibrariesCount();
|
||||
return __ret;
|
||||
}
|
||||
|
||||
|
@ -1022,14 +1070,43 @@ CppSharp::Parser::ParserResult^ CppSharp::Parser::ClangParser::ParseHeader(CppSh
|
|||
return (__ret == nullptr) ? nullptr : gcnew ::CppSharp::Parser::ParserResult((struct ::CppSharp::CppParser::ParserResult*)__ret);
|
||||
}
|
||||
|
||||
CppSharp::Parser::ParserResult^ CppSharp::Parser::ClangParser::ParseLibrary(CppSharp::Parser::LinkerOptions^ Opts)
|
||||
CppSharp::Parser::ParserResult^ CppSharp::Parser::ClangParser::ParseLibrary(CppSharp::Parser::CppLinkerOptions^ Opts)
|
||||
{
|
||||
auto __arg0 = (struct ::CppSharp::CppParser::LinkerOptions*)Opts->NativePtr;
|
||||
auto __arg0 = (struct ::CppSharp::CppParser::CppLinkerOptions*)Opts->NativePtr;
|
||||
auto __ret = ::CppSharp::CppParser::ClangParser::ParseLibrary(__arg0);
|
||||
if (__ret == nullptr) return nullptr;
|
||||
return (__ret == nullptr) ? nullptr : gcnew ::CppSharp::Parser::ParserResult((struct ::CppSharp::CppParser::ParserResult*)__ret);
|
||||
}
|
||||
|
||||
CppSharp::Parser::ParserResult^ CppSharp::Parser::ClangParser::Build(CppSharp::Parser::CppParserOptions^ Opts, CppSharp::Parser::CppLinkerOptions^ LinkerOptions, ::System::String^ File, bool Last)
|
||||
{
|
||||
auto __arg0 = (struct ::CppSharp::CppParser::CppParserOptions*)Opts->NativePtr;
|
||||
auto __arg1 = (struct ::CppSharp::CppParser::CppLinkerOptions*)LinkerOptions->NativePtr;
|
||||
auto __arg2 = clix::marshalString<clix::E_UTF8>(File);
|
||||
auto __ret = ::CppSharp::CppParser::ClangParser::Build(__arg0, __arg1, __arg2, Last);
|
||||
if (__ret == nullptr) return nullptr;
|
||||
return (__ret == nullptr) ? nullptr : gcnew ::CppSharp::Parser::ParserResult((struct ::CppSharp::CppParser::ParserResult*)__ret);
|
||||
}
|
||||
|
||||
CppSharp::Parser::ParserResult^ CppSharp::Parser::ClangParser::Compile(CppSharp::Parser::CppParserOptions^ Opts, ::System::String^ File)
|
||||
{
|
||||
auto __arg0 = (struct ::CppSharp::CppParser::CppParserOptions*)Opts->NativePtr;
|
||||
auto __arg1 = clix::marshalString<clix::E_UTF8>(File);
|
||||
auto __ret = ::CppSharp::CppParser::ClangParser::Compile(__arg0, __arg1);
|
||||
if (__ret == nullptr) return nullptr;
|
||||
return (__ret == nullptr) ? nullptr : gcnew ::CppSharp::Parser::ParserResult((struct ::CppSharp::CppParser::ParserResult*)__ret);
|
||||
}
|
||||
|
||||
CppSharp::Parser::ParserResult^ CppSharp::Parser::ClangParser::Link(CppSharp::Parser::CppParserOptions^ Opts, CppSharp::Parser::CppLinkerOptions^ LinkerOptions, ::System::String^ File, bool Last)
|
||||
{
|
||||
auto __arg0 = (struct ::CppSharp::CppParser::CppParserOptions*)Opts->NativePtr;
|
||||
auto __arg1 = (struct ::CppSharp::CppParser::CppLinkerOptions*)LinkerOptions->NativePtr;
|
||||
auto __arg2 = clix::marshalString<clix::E_UTF8>(File);
|
||||
auto __ret = ::CppSharp::CppParser::ClangParser::Link(__arg0, __arg1, __arg2, Last);
|
||||
if (__ret == nullptr) return nullptr;
|
||||
return (__ret == nullptr) ? nullptr : gcnew ::CppSharp::Parser::ParserResult((struct ::CppSharp::CppParser::ParserResult*)__ret);
|
||||
}
|
||||
|
||||
CppSharp::Parser::ClangParser::ClangParser()
|
||||
{
|
||||
__ownsNativeInstance = true;
|
||||
|
|
|
@ -17,8 +17,8 @@ namespace CppSharp
|
|||
enum class ParserResultKind;
|
||||
enum class SourceLocationKind;
|
||||
ref class ClangParser;
|
||||
ref class CppLinkerOptions;
|
||||
ref class CppParserOptions;
|
||||
ref class LinkerOptions;
|
||||
ref class Parser;
|
||||
ref class ParserDiagnostic;
|
||||
ref class ParserResult;
|
||||
|
@ -87,6 +87,12 @@ namespace CppSharp
|
|||
void set(::System::Collections::Generic::List<::System::String^>^);
|
||||
}
|
||||
|
||||
property ::System::Collections::Generic::List<::System::String^>^ CompilationOptions
|
||||
{
|
||||
::System::Collections::Generic::List<::System::String^>^ get();
|
||||
void set(::System::Collections::Generic::List<::System::String^>^);
|
||||
}
|
||||
|
||||
property ::System::Collections::Generic::List<::System::String^>^ SourceFiles
|
||||
{
|
||||
::System::Collections::Generic::List<::System::String^>^ get();
|
||||
|
@ -199,6 +205,11 @@ namespace CppSharp
|
|||
unsigned int get();
|
||||
}
|
||||
|
||||
property unsigned int CompilationOptionsCount
|
||||
{
|
||||
unsigned int get();
|
||||
}
|
||||
|
||||
property unsigned int SourceFilesCount
|
||||
{
|
||||
unsigned int get();
|
||||
|
@ -235,6 +246,12 @@ namespace CppSharp
|
|||
|
||||
void ClearArguments();
|
||||
|
||||
::System::String^ GetCompilationOptions(unsigned int i);
|
||||
|
||||
void AddCompilationOptions(::System::String^ s);
|
||||
|
||||
void ClearCompilationOptions();
|
||||
|
||||
::System::String^ GetSourceFiles(unsigned int i);
|
||||
|
||||
void AddSourceFiles(::System::String^ s);
|
||||
|
@ -276,26 +293,26 @@ namespace CppSharp
|
|||
bool __ownsNativeInstance;
|
||||
};
|
||||
|
||||
public ref class LinkerOptions : ICppInstance
|
||||
public ref class CppLinkerOptions : ICppInstance
|
||||
{
|
||||
public:
|
||||
|
||||
property struct ::CppSharp::CppParser::LinkerOptions* NativePtr;
|
||||
property struct ::CppSharp::CppParser::CppLinkerOptions* NativePtr;
|
||||
property ::System::IntPtr __Instance
|
||||
{
|
||||
virtual ::System::IntPtr get();
|
||||
virtual void set(::System::IntPtr instance);
|
||||
}
|
||||
|
||||
LinkerOptions(struct ::CppSharp::CppParser::LinkerOptions* native);
|
||||
LinkerOptions(struct ::CppSharp::CppParser::LinkerOptions* native, bool ownNativeInstance);
|
||||
static LinkerOptions^ __CreateInstance(::System::IntPtr native);
|
||||
static LinkerOptions^ __CreateInstance(::System::IntPtr native, bool __ownsNativeInstance);
|
||||
LinkerOptions();
|
||||
CppLinkerOptions(struct ::CppSharp::CppParser::CppLinkerOptions* native);
|
||||
CppLinkerOptions(struct ::CppSharp::CppParser::CppLinkerOptions* native, bool ownNativeInstance);
|
||||
static CppLinkerOptions^ __CreateInstance(::System::IntPtr native);
|
||||
static CppLinkerOptions^ __CreateInstance(::System::IntPtr native, bool __ownsNativeInstance);
|
||||
CppLinkerOptions();
|
||||
|
||||
LinkerOptions(CppSharp::Parser::LinkerOptions^ _0);
|
||||
CppLinkerOptions(CppSharp::Parser::CppLinkerOptions^ _0);
|
||||
|
||||
~LinkerOptions();
|
||||
~CppLinkerOptions();
|
||||
|
||||
property ::System::Collections::Generic::List<::System::String^>^ Arguments
|
||||
{
|
||||
|
@ -504,7 +521,13 @@ namespace CppSharp
|
|||
|
||||
static CppSharp::Parser::ParserResult^ ParseHeader(CppSharp::Parser::CppParserOptions^ Opts);
|
||||
|
||||
static CppSharp::Parser::ParserResult^ ParseLibrary(CppSharp::Parser::LinkerOptions^ Opts);
|
||||
static CppSharp::Parser::ParserResult^ ParseLibrary(CppSharp::Parser::CppLinkerOptions^ Opts);
|
||||
|
||||
static CppSharp::Parser::ParserResult^ Build(CppSharp::Parser::CppParserOptions^ Opts, CppSharp::Parser::CppLinkerOptions^ LinkerOptions, ::System::String^ File, bool Last);
|
||||
|
||||
static CppSharp::Parser::ParserResult^ Compile(CppSharp::Parser::CppParserOptions^ Opts, ::System::String^ File);
|
||||
|
||||
static CppSharp::Parser::ParserResult^ Link(CppSharp::Parser::CppParserOptions^ Opts, CppSharp::Parser::CppLinkerOptions^ LinkerOptions, ::System::String^ File, bool Last);
|
||||
|
||||
protected:
|
||||
|
||||
|
|
|
@ -372,8 +372,8 @@ extern "C" void c__N_CppSharp_N_CppParser_S_ParserTargetInfo_ParserTargetInfo___
|
|||
struct CppSharp::CppParser::ParserTargetInfo& (CppSharp::CppParser::ParserTargetInfo::*_239)(const struct CppSharp::CppParser::ParserTargetInfo&) = &CppSharp::CppParser::ParserTargetInfo::operator=;
|
||||
extern "C" void c__N_CppSharp_N_CppParser_S_CppParserOptions_CppParserOptions___1__N_CppSharp_N_CppParser_S_CppParserOptions(void* __instance, const CppSharp::CppParser::CppParserOptions& _0) { ::new (__instance) CppSharp::CppParser::CppParserOptions(_0); }
|
||||
struct CppSharp::CppParser::CppParserOptions& (CppSharp::CppParser::CppParserOptions::*_240)(const struct CppSharp::CppParser::CppParserOptions&) = &CppSharp::CppParser::CppParserOptions::operator=;
|
||||
extern "C" void c__N_CppSharp_N_CppParser_S_LinkerOptions_LinkerOptions___1__N_CppSharp_N_CppParser_S_LinkerOptions(void* __instance, const CppSharp::CppParser::LinkerOptions& _0) { ::new (__instance) CppSharp::CppParser::LinkerOptions(_0); }
|
||||
struct CppSharp::CppParser::LinkerOptions& (CppSharp::CppParser::LinkerOptions::*_241)(const struct CppSharp::CppParser::LinkerOptions&) = &CppSharp::CppParser::LinkerOptions::operator=;
|
||||
extern "C" void c__N_CppSharp_N_CppParser_S_CppLinkerOptions_CppLinkerOptions___1__N_CppSharp_N_CppParser_S_CppLinkerOptions(void* __instance, const CppSharp::CppParser::CppLinkerOptions& _0) { ::new (__instance) CppSharp::CppParser::CppLinkerOptions(_0); }
|
||||
struct CppSharp::CppParser::CppLinkerOptions& (CppSharp::CppParser::CppLinkerOptions::*_241)(const struct CppSharp::CppParser::CppLinkerOptions&) = &CppSharp::CppParser::CppLinkerOptions::operator=;
|
||||
struct CppSharp::CppParser::ParserDiagnostic& (CppSharp::CppParser::ParserDiagnostic::*_242)(const struct CppSharp::CppParser::ParserDiagnostic&) = &CppSharp::CppParser::ParserDiagnostic::operator=;
|
||||
struct CppSharp::CppParser::ParserResult& (CppSharp::CppParser::ParserResult::*_243)(const struct CppSharp::CppParser::ParserResult&) = &CppSharp::CppParser::ParserResult::operator=;
|
||||
class CppSharp::CppParser::ClangParser& (CppSharp::CppParser::ClangParser::*_244)(class CppSharp::CppParser::ClangParser&&) = &CppSharp::CppParser::ClangParser::operator=;
|
||||
|
|
|
@ -39478,10 +39478,11 @@ namespace CppSharp
|
|||
|
||||
public unsafe partial class CppParserOptions : IDisposable
|
||||
{
|
||||
[StructLayout(LayoutKind.Sequential, Size = 124)]
|
||||
[StructLayout(LayoutKind.Sequential, Size = 136)]
|
||||
public partial struct __Internal
|
||||
{
|
||||
internal global::Std.Vector.__Internalc__N_std_N___1_S_vector____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C___N_std_N___1_S_allocator__S0_ Arguments;
|
||||
internal global::Std.Vector.__Internalc__N_std_N___1_S_vector____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C___N_std_N___1_S_allocator__S0_ CompilationOptions;
|
||||
internal global::Std.Vector.__Internalc__N_std_N___1_S_vector____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C___N_std_N___1_S_allocator__S0_ SourceFiles;
|
||||
internal global::Std.Vector.__Internalc__N_std_N___1_S_vector____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C___N_std_N___1_S_allocator__S0_ IncludeDirs;
|
||||
internal global::Std.Vector.__Internalc__N_std_N___1_S_vector____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C___N_std_N___1_S_allocator__S0_ SystemIncludeDirs;
|
||||
|
@ -39519,6 +39520,15 @@ namespace CppSharp
|
|||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppParserOptions14clearArgumentsEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void ClearArguments(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppParserOptions21getCompilationOptionsEj", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr GetCompilationOptions(__IntPtr __instance, uint i);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppParserOptions21addCompilationOptionsEPKc", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void AddCompilationOptions(__IntPtr __instance, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(CppSharp.Runtime.UTF8Marshaller))] string s);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppParserOptions23clearCompilationOptionsEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void ClearCompilationOptions(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppParserOptions14getSourceFilesEj", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr GetSourceFiles(__IntPtr __instance, uint i);
|
||||
|
||||
|
@ -39579,6 +39589,9 @@ namespace CppSharp
|
|||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppParserOptions17getArgumentsCountEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern uint GetArgumentsCount(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppParserOptions26getCompilationOptionsCountEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern uint GetCompilationOptionsCount(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppParserOptions19getSourceFilesCountEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern uint GetSourceFilesCount(__IntPtr __instance);
|
||||
|
||||
|
@ -39702,6 +39715,22 @@ namespace CppSharp
|
|||
__Internal.ClearArguments(__Instance);
|
||||
}
|
||||
|
||||
public string GetCompilationOptions(uint i)
|
||||
{
|
||||
var __ret = __Internal.GetCompilationOptions(__Instance, i);
|
||||
return CppSharp.Runtime.MarshalUtil.GetString(global::System.Text.Encoding.UTF8, __ret);
|
||||
}
|
||||
|
||||
public void AddCompilationOptions(string s)
|
||||
{
|
||||
__Internal.AddCompilationOptions(__Instance, s);
|
||||
}
|
||||
|
||||
public void ClearCompilationOptions()
|
||||
{
|
||||
__Internal.ClearCompilationOptions(__Instance);
|
||||
}
|
||||
|
||||
public string GetSourceFiles(uint i)
|
||||
{
|
||||
var __ret = __Internal.GetSourceFiles(__Instance, i);
|
||||
|
@ -39965,6 +39994,15 @@ namespace CppSharp
|
|||
}
|
||||
}
|
||||
|
||||
public uint CompilationOptionsCount
|
||||
{
|
||||
get
|
||||
{
|
||||
var __ret = __Internal.GetCompilationOptionsCount(__Instance);
|
||||
return __ret;
|
||||
}
|
||||
}
|
||||
|
||||
public uint SourceFilesCount
|
||||
{
|
||||
get
|
||||
|
@ -40020,7 +40058,7 @@ namespace CppSharp
|
|||
}
|
||||
}
|
||||
|
||||
public unsafe partial class LinkerOptions : IDisposable
|
||||
public unsafe partial class CppLinkerOptions : IDisposable
|
||||
{
|
||||
[StructLayout(LayoutKind.Sequential, Size = 36)]
|
||||
public partial struct __Internal
|
||||
|
@ -40029,112 +40067,112 @@ namespace CppSharp
|
|||
internal global::Std.Vector.__Internalc__N_std_N___1_S_vector____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C___N_std_N___1_S_allocator__S0_ LibraryDirs;
|
||||
internal global::Std.Vector.__Internalc__N_std_N___1_S_vector____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C___N_std_N___1_S_allocator__S0_ Libraries;
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptionsC2Ev", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptionsC2Ev", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void ctor(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptionsC2ERKS1_", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptionsC2ERKS1_", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void cctor(__IntPtr __instance, __IntPtr _0);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptionsD2Ev", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptionsD2Ev", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void dtor(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions12getArgumentsEj", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions12getArgumentsEj", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr GetArguments(__IntPtr __instance, uint i);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions12addArgumentsEPKc", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions12addArgumentsEPKc", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void AddArguments(__IntPtr __instance, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(CppSharp.Runtime.UTF8Marshaller))] string s);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions14clearArgumentsEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions14clearArgumentsEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void ClearArguments(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions14getLibraryDirsEj", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions14getLibraryDirsEj", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr GetLibraryDirs(__IntPtr __instance, uint i);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions14addLibraryDirsEPKc", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions14addLibraryDirsEPKc", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void AddLibraryDirs(__IntPtr __instance, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(CppSharp.Runtime.UTF8Marshaller))] string s);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions16clearLibraryDirsEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions16clearLibraryDirsEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void ClearLibraryDirs(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions12getLibrariesEj", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions12getLibrariesEj", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr GetLibraries(__IntPtr __instance, uint i);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions12addLibrariesEPKc", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions12addLibrariesEPKc", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void AddLibraries(__IntPtr __instance, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(CppSharp.Runtime.UTF8Marshaller))] string s);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions14clearLibrariesEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions14clearLibrariesEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void ClearLibraries(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions17getArgumentsCountEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions17getArgumentsCountEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern uint GetArgumentsCount(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions19getLibraryDirsCountEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions19getLibraryDirsCountEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern uint GetLibraryDirsCount(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions17getLibrariesCountEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions17getLibrariesCountEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern uint GetLibrariesCount(__IntPtr __instance);
|
||||
}
|
||||
|
||||
public __IntPtr __Instance { get; protected set; }
|
||||
|
||||
internal static readonly global::System.Collections.Concurrent.ConcurrentDictionary<IntPtr, global::CppSharp.Parser.LinkerOptions> NativeToManagedMap = new global::System.Collections.Concurrent.ConcurrentDictionary<IntPtr, global::CppSharp.Parser.LinkerOptions>();
|
||||
internal static readonly global::System.Collections.Concurrent.ConcurrentDictionary<IntPtr, global::CppSharp.Parser.CppLinkerOptions> NativeToManagedMap = new global::System.Collections.Concurrent.ConcurrentDictionary<IntPtr, global::CppSharp.Parser.CppLinkerOptions>();
|
||||
|
||||
protected bool __ownsNativeInstance;
|
||||
|
||||
internal static LinkerOptions __CreateInstance(__IntPtr native, bool skipVTables = false)
|
||||
internal static CppLinkerOptions __CreateInstance(__IntPtr native, bool skipVTables = false)
|
||||
{
|
||||
return new LinkerOptions(native.ToPointer(), skipVTables);
|
||||
return new CppLinkerOptions(native.ToPointer(), skipVTables);
|
||||
}
|
||||
|
||||
internal static LinkerOptions __GetOrCreateInstance(__IntPtr native, bool saveInstance = false, bool skipVTables = false)
|
||||
internal static CppLinkerOptions __GetOrCreateInstance(__IntPtr native, bool saveInstance = false, bool skipVTables = false)
|
||||
{
|
||||
if (native == __IntPtr.Zero)
|
||||
return null;
|
||||
if (NativeToManagedMap.TryGetValue(native, out var managed))
|
||||
return (LinkerOptions)managed;
|
||||
return (CppLinkerOptions)managed;
|
||||
var result = __CreateInstance(native, skipVTables);
|
||||
if (saveInstance)
|
||||
NativeToManagedMap[native] = result;
|
||||
return result;
|
||||
}
|
||||
|
||||
internal static LinkerOptions __CreateInstance(__Internal native, bool skipVTables = false)
|
||||
internal static CppLinkerOptions __CreateInstance(__Internal native, bool skipVTables = false)
|
||||
{
|
||||
return new LinkerOptions(native, skipVTables);
|
||||
return new CppLinkerOptions(native, skipVTables);
|
||||
}
|
||||
|
||||
private static void* __CopyValue(__Internal native)
|
||||
{
|
||||
var ret = Marshal.AllocHGlobal(sizeof(__Internal));
|
||||
global::CppSharp.Parser.LinkerOptions.__Internal.cctor(ret, new __IntPtr(&native));
|
||||
global::CppSharp.Parser.CppLinkerOptions.__Internal.cctor(ret, new __IntPtr(&native));
|
||||
return ret.ToPointer();
|
||||
}
|
||||
|
||||
private LinkerOptions(__Internal native, bool skipVTables = false)
|
||||
private CppLinkerOptions(__Internal native, bool skipVTables = false)
|
||||
: this(__CopyValue(native), skipVTables)
|
||||
{
|
||||
__ownsNativeInstance = true;
|
||||
NativeToManagedMap[__Instance] = this;
|
||||
}
|
||||
|
||||
protected LinkerOptions(void* native, bool skipVTables = false)
|
||||
protected CppLinkerOptions(void* native, bool skipVTables = false)
|
||||
{
|
||||
if (native == null)
|
||||
return;
|
||||
__Instance = new __IntPtr(native);
|
||||
}
|
||||
|
||||
public LinkerOptions()
|
||||
public CppLinkerOptions()
|
||||
{
|
||||
__Instance = Marshal.AllocHGlobal(sizeof(global::CppSharp.Parser.LinkerOptions.__Internal));
|
||||
__Instance = Marshal.AllocHGlobal(sizeof(global::CppSharp.Parser.CppLinkerOptions.__Internal));
|
||||
__ownsNativeInstance = true;
|
||||
NativeToManagedMap[__Instance] = this;
|
||||
__Internal.ctor(__Instance);
|
||||
}
|
||||
|
||||
public LinkerOptions(global::CppSharp.Parser.LinkerOptions _0)
|
||||
public CppLinkerOptions(global::CppSharp.Parser.CppLinkerOptions _0)
|
||||
{
|
||||
__Instance = Marshal.AllocHGlobal(sizeof(global::CppSharp.Parser.LinkerOptions.__Internal));
|
||||
__Instance = Marshal.AllocHGlobal(sizeof(global::CppSharp.Parser.CppLinkerOptions.__Internal));
|
||||
__ownsNativeInstance = true;
|
||||
NativeToManagedMap[__Instance] = this;
|
||||
if (ReferenceEquals(_0, null))
|
||||
|
@ -40648,8 +40686,17 @@ namespace CppSharp
|
|||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser11ClangParser11ParseHeaderEPNS0_16CppParserOptionsE", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr ParseHeader(__IntPtr Opts);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser11ClangParser12ParseLibraryEPNS0_13LinkerOptionsE", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser11ClangParser12ParseLibraryEPNS0_16CppLinkerOptionsE", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr ParseLibrary(__IntPtr Opts);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser11ClangParser5BuildEPNS0_16CppParserOptionsEPKNS0_16CppLinkerOptionsERKNSt3__112basic_stringIcNS7_11char_traitsIcEENS7_9allocatorIcEEEEb", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr Build(__IntPtr Opts, __IntPtr LinkerOptions, __IntPtr File, bool Last);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser11ClangParser7CompileEPNS0_16CppParserOptionsERKNSt3__112basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEE", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr Compile(__IntPtr Opts, __IntPtr File);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser11ClangParser4LinkEPNS0_16CppParserOptionsEPKNS0_16CppLinkerOptionsERKNSt3__112basic_stringIcNS7_11char_traitsIcEENS7_9allocatorIcEEEEb", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr Link(__IntPtr Opts, __IntPtr LinkerOptions, __IntPtr File, bool Last);
|
||||
}
|
||||
|
||||
public __IntPtr __Instance { get; protected set; }
|
||||
|
@ -40742,13 +40789,51 @@ namespace CppSharp
|
|||
return __result0;
|
||||
}
|
||||
|
||||
public static global::CppSharp.Parser.ParserResult ParseLibrary(global::CppSharp.Parser.LinkerOptions Opts)
|
||||
public static global::CppSharp.Parser.ParserResult ParseLibrary(global::CppSharp.Parser.CppLinkerOptions Opts)
|
||||
{
|
||||
var __arg0 = Opts is null ? __IntPtr.Zero : Opts.__Instance;
|
||||
var __ret = __Internal.ParseLibrary(__arg0);
|
||||
var __result0 = global::CppSharp.Parser.ParserResult.__GetOrCreateInstance(__ret, false);
|
||||
return __result0;
|
||||
}
|
||||
|
||||
public static global::CppSharp.Parser.ParserResult Build(global::CppSharp.Parser.CppParserOptions Opts, global::CppSharp.Parser.CppLinkerOptions LinkerOptions, string File, bool Last)
|
||||
{
|
||||
var __arg0 = Opts is null ? __IntPtr.Zero : Opts.__Instance;
|
||||
var __arg1 = LinkerOptions is null ? __IntPtr.Zero : LinkerOptions.__Instance;
|
||||
var __basicString2 = new global::Std.BasicString<sbyte, global::Std.CharTraits<sbyte>, global::Std.Allocator<sbyte>>();
|
||||
global::Std.BasicStringExtensions.Assign(__basicString2, File);
|
||||
var __arg2 = __basicString2.__Instance;
|
||||
var __ret = __Internal.Build(__arg0, __arg1, __arg2, Last);
|
||||
__basicString2.Dispose();
|
||||
var __result0 = global::CppSharp.Parser.ParserResult.__GetOrCreateInstance(__ret, false);
|
||||
return __result0;
|
||||
}
|
||||
|
||||
public static global::CppSharp.Parser.ParserResult Compile(global::CppSharp.Parser.CppParserOptions Opts, string File)
|
||||
{
|
||||
var __arg0 = Opts is null ? __IntPtr.Zero : Opts.__Instance;
|
||||
var __basicString1 = new global::Std.BasicString<sbyte, global::Std.CharTraits<sbyte>, global::Std.Allocator<sbyte>>();
|
||||
global::Std.BasicStringExtensions.Assign(__basicString1, File);
|
||||
var __arg1 = __basicString1.__Instance;
|
||||
var __ret = __Internal.Compile(__arg0, __arg1);
|
||||
__basicString1.Dispose();
|
||||
var __result0 = global::CppSharp.Parser.ParserResult.__GetOrCreateInstance(__ret, false);
|
||||
return __result0;
|
||||
}
|
||||
|
||||
public static global::CppSharp.Parser.ParserResult Link(global::CppSharp.Parser.CppParserOptions Opts, global::CppSharp.Parser.CppLinkerOptions LinkerOptions, string File, bool Last)
|
||||
{
|
||||
var __arg0 = Opts is null ? __IntPtr.Zero : Opts.__Instance;
|
||||
var __arg1 = LinkerOptions is null ? __IntPtr.Zero : LinkerOptions.__Instance;
|
||||
var __basicString2 = new global::Std.BasicString<sbyte, global::Std.CharTraits<sbyte>, global::Std.Allocator<sbyte>>();
|
||||
global::Std.BasicStringExtensions.Assign(__basicString2, File);
|
||||
var __arg2 = __basicString2.__Instance;
|
||||
var __ret = __Internal.Link(__arg0, __arg1, __arg2, Last);
|
||||
__basicString2.Dispose();
|
||||
var __result0 = global::CppSharp.Parser.ParserResult.__GetOrCreateInstance(__ret, false);
|
||||
return __result0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -372,8 +372,8 @@ extern "C" __declspec(dllexport) void c__N_CppSharp_N_CppParser_S_ParserTargetIn
|
|||
struct CppSharp::CppParser::ParserTargetInfo& (CppSharp::CppParser::ParserTargetInfo::*_239)(const struct CppSharp::CppParser::ParserTargetInfo&) = &CppSharp::CppParser::ParserTargetInfo::operator=;
|
||||
extern "C" __declspec(dllexport) void c__N_CppSharp_N_CppParser_S_CppParserOptions_CppParserOptions___1__N_CppSharp_N_CppParser_S_CppParserOptions(void* __instance, const CppSharp::CppParser::CppParserOptions& _0) { ::new (__instance) CppSharp::CppParser::CppParserOptions(_0); }
|
||||
struct CppSharp::CppParser::CppParserOptions& (CppSharp::CppParser::CppParserOptions::*_240)(const struct CppSharp::CppParser::CppParserOptions&) = &CppSharp::CppParser::CppParserOptions::operator=;
|
||||
extern "C" __declspec(dllexport) void c__N_CppSharp_N_CppParser_S_LinkerOptions_LinkerOptions___1__N_CppSharp_N_CppParser_S_LinkerOptions(void* __instance, const CppSharp::CppParser::LinkerOptions& _0) { ::new (__instance) CppSharp::CppParser::LinkerOptions(_0); }
|
||||
struct CppSharp::CppParser::LinkerOptions& (CppSharp::CppParser::LinkerOptions::*_241)(const struct CppSharp::CppParser::LinkerOptions&) = &CppSharp::CppParser::LinkerOptions::operator=;
|
||||
extern "C" __declspec(dllexport) void c__N_CppSharp_N_CppParser_S_CppLinkerOptions_CppLinkerOptions___1__N_CppSharp_N_CppParser_S_CppLinkerOptions(void* __instance, const CppSharp::CppParser::CppLinkerOptions& _0) { ::new (__instance) CppSharp::CppParser::CppLinkerOptions(_0); }
|
||||
struct CppSharp::CppParser::CppLinkerOptions& (CppSharp::CppParser::CppLinkerOptions::*_241)(const struct CppSharp::CppParser::CppLinkerOptions&) = &CppSharp::CppParser::CppLinkerOptions::operator=;
|
||||
struct CppSharp::CppParser::ParserDiagnostic& (CppSharp::CppParser::ParserDiagnostic::*_242)(const struct CppSharp::CppParser::ParserDiagnostic&) = &CppSharp::CppParser::ParserDiagnostic::operator=;
|
||||
struct CppSharp::CppParser::ParserResult& (CppSharp::CppParser::ParserResult::*_243)(const struct CppSharp::CppParser::ParserResult&) = &CppSharp::CppParser::ParserResult::operator=;
|
||||
class CppSharp::CppParser::ClangParser& (CppSharp::CppParser::ClangParser::*_244)(class CppSharp::CppParser::ClangParser&&) = &CppSharp::CppParser::ClangParser::operator=;
|
||||
|
|
|
@ -39489,10 +39489,11 @@ namespace CppSharp
|
|||
|
||||
public unsafe partial class CppParserOptions : IDisposable
|
||||
{
|
||||
[StructLayout(LayoutKind.Sequential, Size = 148)]
|
||||
[StructLayout(LayoutKind.Sequential, Size = 160)]
|
||||
public partial struct __Internal
|
||||
{
|
||||
internal global::Std.Vector.__Internalc__N_std_S_vector____N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C___N_std_S_allocator__S0_ Arguments;
|
||||
internal global::Std.Vector.__Internalc__N_std_S_vector____N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C___N_std_S_allocator__S0_ CompilationOptions;
|
||||
internal global::Std.Vector.__Internalc__N_std_S_vector____N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C___N_std_S_allocator__S0_ SourceFiles;
|
||||
internal global::Std.Vector.__Internalc__N_std_S_vector____N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C___N_std_S_allocator__S0_ IncludeDirs;
|
||||
internal global::Std.Vector.__Internalc__N_std_S_vector____N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C___N_std_S_allocator__S0_ SystemIncludeDirs;
|
||||
|
@ -39530,6 +39531,15 @@ namespace CppSharp
|
|||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?clearArguments@CppParserOptions@CppParser@CppSharp@@QAEXXZ", CallingConvention = __CallingConvention.ThisCall)]
|
||||
internal static extern void ClearArguments(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?getCompilationOptions@CppParserOptions@CppParser@CppSharp@@QAEPBDI@Z", CallingConvention = __CallingConvention.ThisCall)]
|
||||
internal static extern __IntPtr GetCompilationOptions(__IntPtr __instance, uint i);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?addCompilationOptions@CppParserOptions@CppParser@CppSharp@@QAEXPBD@Z", CallingConvention = __CallingConvention.ThisCall)]
|
||||
internal static extern void AddCompilationOptions(__IntPtr __instance, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(CppSharp.Runtime.UTF8Marshaller))] string s);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?clearCompilationOptions@CppParserOptions@CppParser@CppSharp@@QAEXXZ", CallingConvention = __CallingConvention.ThisCall)]
|
||||
internal static extern void ClearCompilationOptions(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?getSourceFiles@CppParserOptions@CppParser@CppSharp@@QAEPBDI@Z", CallingConvention = __CallingConvention.ThisCall)]
|
||||
internal static extern __IntPtr GetSourceFiles(__IntPtr __instance, uint i);
|
||||
|
||||
|
@ -39590,6 +39600,9 @@ namespace CppSharp
|
|||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?getArgumentsCount@CppParserOptions@CppParser@CppSharp@@QAEIXZ", CallingConvention = __CallingConvention.ThisCall)]
|
||||
internal static extern uint GetArgumentsCount(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?getCompilationOptionsCount@CppParserOptions@CppParser@CppSharp@@QAEIXZ", CallingConvention = __CallingConvention.ThisCall)]
|
||||
internal static extern uint GetCompilationOptionsCount(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?getSourceFilesCount@CppParserOptions@CppParser@CppSharp@@QAEIXZ", CallingConvention = __CallingConvention.ThisCall)]
|
||||
internal static extern uint GetSourceFilesCount(__IntPtr __instance);
|
||||
|
||||
|
@ -39713,6 +39726,22 @@ namespace CppSharp
|
|||
__Internal.ClearArguments(__Instance);
|
||||
}
|
||||
|
||||
public string GetCompilationOptions(uint i)
|
||||
{
|
||||
var __ret = __Internal.GetCompilationOptions(__Instance, i);
|
||||
return CppSharp.Runtime.MarshalUtil.GetString(global::System.Text.Encoding.UTF8, __ret);
|
||||
}
|
||||
|
||||
public void AddCompilationOptions(string s)
|
||||
{
|
||||
__Internal.AddCompilationOptions(__Instance, s);
|
||||
}
|
||||
|
||||
public void ClearCompilationOptions()
|
||||
{
|
||||
__Internal.ClearCompilationOptions(__Instance);
|
||||
}
|
||||
|
||||
public string GetSourceFiles(uint i)
|
||||
{
|
||||
var __ret = __Internal.GetSourceFiles(__Instance, i);
|
||||
|
@ -39976,6 +40005,15 @@ namespace CppSharp
|
|||
}
|
||||
}
|
||||
|
||||
public uint CompilationOptionsCount
|
||||
{
|
||||
get
|
||||
{
|
||||
var __ret = __Internal.GetCompilationOptionsCount(__Instance);
|
||||
return __ret;
|
||||
}
|
||||
}
|
||||
|
||||
public uint SourceFilesCount
|
||||
{
|
||||
get
|
||||
|
@ -40031,7 +40069,7 @@ namespace CppSharp
|
|||
}
|
||||
}
|
||||
|
||||
public unsafe partial class LinkerOptions : IDisposable
|
||||
public unsafe partial class CppLinkerOptions : IDisposable
|
||||
{
|
||||
[StructLayout(LayoutKind.Sequential, Size = 36)]
|
||||
public partial struct __Internal
|
||||
|
@ -40040,112 +40078,112 @@ namespace CppSharp
|
|||
internal global::Std.Vector.__Internalc__N_std_S_vector____N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C___N_std_S_allocator__S0_ LibraryDirs;
|
||||
internal global::Std.Vector.__Internalc__N_std_S_vector____N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C___N_std_S_allocator__S0_ Libraries;
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "??0LinkerOptions@CppParser@CppSharp@@QAE@XZ", CallingConvention = __CallingConvention.ThisCall)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "??0CppLinkerOptions@CppParser@CppSharp@@QAE@XZ", CallingConvention = __CallingConvention.ThisCall)]
|
||||
internal static extern __IntPtr ctor(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "??0LinkerOptions@CppParser@CppSharp@@QAE@ABU012@@Z", CallingConvention = __CallingConvention.ThisCall)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "??0CppLinkerOptions@CppParser@CppSharp@@QAE@ABU012@@Z", CallingConvention = __CallingConvention.ThisCall)]
|
||||
internal static extern __IntPtr cctor(__IntPtr __instance, __IntPtr _0);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "??1LinkerOptions@CppParser@CppSharp@@QAE@XZ", CallingConvention = __CallingConvention.ThisCall)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "??1CppLinkerOptions@CppParser@CppSharp@@QAE@XZ", CallingConvention = __CallingConvention.ThisCall)]
|
||||
internal static extern void dtor(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?getArguments@LinkerOptions@CppParser@CppSharp@@QAEPBDI@Z", CallingConvention = __CallingConvention.ThisCall)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?getArguments@CppLinkerOptions@CppParser@CppSharp@@QAEPBDI@Z", CallingConvention = __CallingConvention.ThisCall)]
|
||||
internal static extern __IntPtr GetArguments(__IntPtr __instance, uint i);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?addArguments@LinkerOptions@CppParser@CppSharp@@QAEXPBD@Z", CallingConvention = __CallingConvention.ThisCall)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?addArguments@CppLinkerOptions@CppParser@CppSharp@@QAEXPBD@Z", CallingConvention = __CallingConvention.ThisCall)]
|
||||
internal static extern void AddArguments(__IntPtr __instance, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(CppSharp.Runtime.UTF8Marshaller))] string s);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?clearArguments@LinkerOptions@CppParser@CppSharp@@QAEXXZ", CallingConvention = __CallingConvention.ThisCall)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?clearArguments@CppLinkerOptions@CppParser@CppSharp@@QAEXXZ", CallingConvention = __CallingConvention.ThisCall)]
|
||||
internal static extern void ClearArguments(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?getLibraryDirs@LinkerOptions@CppParser@CppSharp@@QAEPBDI@Z", CallingConvention = __CallingConvention.ThisCall)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?getLibraryDirs@CppLinkerOptions@CppParser@CppSharp@@QAEPBDI@Z", CallingConvention = __CallingConvention.ThisCall)]
|
||||
internal static extern __IntPtr GetLibraryDirs(__IntPtr __instance, uint i);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?addLibraryDirs@LinkerOptions@CppParser@CppSharp@@QAEXPBD@Z", CallingConvention = __CallingConvention.ThisCall)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?addLibraryDirs@CppLinkerOptions@CppParser@CppSharp@@QAEXPBD@Z", CallingConvention = __CallingConvention.ThisCall)]
|
||||
internal static extern void AddLibraryDirs(__IntPtr __instance, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(CppSharp.Runtime.UTF8Marshaller))] string s);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?clearLibraryDirs@LinkerOptions@CppParser@CppSharp@@QAEXXZ", CallingConvention = __CallingConvention.ThisCall)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?clearLibraryDirs@CppLinkerOptions@CppParser@CppSharp@@QAEXXZ", CallingConvention = __CallingConvention.ThisCall)]
|
||||
internal static extern void ClearLibraryDirs(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?getLibraries@LinkerOptions@CppParser@CppSharp@@QAEPBDI@Z", CallingConvention = __CallingConvention.ThisCall)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?getLibraries@CppLinkerOptions@CppParser@CppSharp@@QAEPBDI@Z", CallingConvention = __CallingConvention.ThisCall)]
|
||||
internal static extern __IntPtr GetLibraries(__IntPtr __instance, uint i);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?addLibraries@LinkerOptions@CppParser@CppSharp@@QAEXPBD@Z", CallingConvention = __CallingConvention.ThisCall)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?addLibraries@CppLinkerOptions@CppParser@CppSharp@@QAEXPBD@Z", CallingConvention = __CallingConvention.ThisCall)]
|
||||
internal static extern void AddLibraries(__IntPtr __instance, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(CppSharp.Runtime.UTF8Marshaller))] string s);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?clearLibraries@LinkerOptions@CppParser@CppSharp@@QAEXXZ", CallingConvention = __CallingConvention.ThisCall)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?clearLibraries@CppLinkerOptions@CppParser@CppSharp@@QAEXXZ", CallingConvention = __CallingConvention.ThisCall)]
|
||||
internal static extern void ClearLibraries(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?getArgumentsCount@LinkerOptions@CppParser@CppSharp@@QAEIXZ", CallingConvention = __CallingConvention.ThisCall)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?getArgumentsCount@CppLinkerOptions@CppParser@CppSharp@@QAEIXZ", CallingConvention = __CallingConvention.ThisCall)]
|
||||
internal static extern uint GetArgumentsCount(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?getLibraryDirsCount@LinkerOptions@CppParser@CppSharp@@QAEIXZ", CallingConvention = __CallingConvention.ThisCall)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?getLibraryDirsCount@CppLinkerOptions@CppParser@CppSharp@@QAEIXZ", CallingConvention = __CallingConvention.ThisCall)]
|
||||
internal static extern uint GetLibraryDirsCount(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?getLibrariesCount@LinkerOptions@CppParser@CppSharp@@QAEIXZ", CallingConvention = __CallingConvention.ThisCall)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?getLibrariesCount@CppLinkerOptions@CppParser@CppSharp@@QAEIXZ", CallingConvention = __CallingConvention.ThisCall)]
|
||||
internal static extern uint GetLibrariesCount(__IntPtr __instance);
|
||||
}
|
||||
|
||||
public __IntPtr __Instance { get; protected set; }
|
||||
|
||||
internal static readonly global::System.Collections.Concurrent.ConcurrentDictionary<IntPtr, global::CppSharp.Parser.LinkerOptions> NativeToManagedMap = new global::System.Collections.Concurrent.ConcurrentDictionary<IntPtr, global::CppSharp.Parser.LinkerOptions>();
|
||||
internal static readonly global::System.Collections.Concurrent.ConcurrentDictionary<IntPtr, global::CppSharp.Parser.CppLinkerOptions> NativeToManagedMap = new global::System.Collections.Concurrent.ConcurrentDictionary<IntPtr, global::CppSharp.Parser.CppLinkerOptions>();
|
||||
|
||||
protected bool __ownsNativeInstance;
|
||||
|
||||
internal static LinkerOptions __CreateInstance(__IntPtr native, bool skipVTables = false)
|
||||
internal static CppLinkerOptions __CreateInstance(__IntPtr native, bool skipVTables = false)
|
||||
{
|
||||
return new LinkerOptions(native.ToPointer(), skipVTables);
|
||||
return new CppLinkerOptions(native.ToPointer(), skipVTables);
|
||||
}
|
||||
|
||||
internal static LinkerOptions __GetOrCreateInstance(__IntPtr native, bool saveInstance = false, bool skipVTables = false)
|
||||
internal static CppLinkerOptions __GetOrCreateInstance(__IntPtr native, bool saveInstance = false, bool skipVTables = false)
|
||||
{
|
||||
if (native == __IntPtr.Zero)
|
||||
return null;
|
||||
if (NativeToManagedMap.TryGetValue(native, out var managed))
|
||||
return (LinkerOptions)managed;
|
||||
return (CppLinkerOptions)managed;
|
||||
var result = __CreateInstance(native, skipVTables);
|
||||
if (saveInstance)
|
||||
NativeToManagedMap[native] = result;
|
||||
return result;
|
||||
}
|
||||
|
||||
internal static LinkerOptions __CreateInstance(__Internal native, bool skipVTables = false)
|
||||
internal static CppLinkerOptions __CreateInstance(__Internal native, bool skipVTables = false)
|
||||
{
|
||||
return new LinkerOptions(native, skipVTables);
|
||||
return new CppLinkerOptions(native, skipVTables);
|
||||
}
|
||||
|
||||
private static void* __CopyValue(__Internal native)
|
||||
{
|
||||
var ret = Marshal.AllocHGlobal(sizeof(__Internal));
|
||||
global::CppSharp.Parser.LinkerOptions.__Internal.cctor(ret, new __IntPtr(&native));
|
||||
global::CppSharp.Parser.CppLinkerOptions.__Internal.cctor(ret, new __IntPtr(&native));
|
||||
return ret.ToPointer();
|
||||
}
|
||||
|
||||
private LinkerOptions(__Internal native, bool skipVTables = false)
|
||||
private CppLinkerOptions(__Internal native, bool skipVTables = false)
|
||||
: this(__CopyValue(native), skipVTables)
|
||||
{
|
||||
__ownsNativeInstance = true;
|
||||
NativeToManagedMap[__Instance] = this;
|
||||
}
|
||||
|
||||
protected LinkerOptions(void* native, bool skipVTables = false)
|
||||
protected CppLinkerOptions(void* native, bool skipVTables = false)
|
||||
{
|
||||
if (native == null)
|
||||
return;
|
||||
__Instance = new __IntPtr(native);
|
||||
}
|
||||
|
||||
public LinkerOptions()
|
||||
public CppLinkerOptions()
|
||||
{
|
||||
__Instance = Marshal.AllocHGlobal(sizeof(global::CppSharp.Parser.LinkerOptions.__Internal));
|
||||
__Instance = Marshal.AllocHGlobal(sizeof(global::CppSharp.Parser.CppLinkerOptions.__Internal));
|
||||
__ownsNativeInstance = true;
|
||||
NativeToManagedMap[__Instance] = this;
|
||||
__Internal.ctor(__Instance);
|
||||
}
|
||||
|
||||
public LinkerOptions(global::CppSharp.Parser.LinkerOptions _0)
|
||||
public CppLinkerOptions(global::CppSharp.Parser.CppLinkerOptions _0)
|
||||
{
|
||||
__Instance = Marshal.AllocHGlobal(sizeof(global::CppSharp.Parser.LinkerOptions.__Internal));
|
||||
__Instance = Marshal.AllocHGlobal(sizeof(global::CppSharp.Parser.CppLinkerOptions.__Internal));
|
||||
__ownsNativeInstance = true;
|
||||
NativeToManagedMap[__Instance] = this;
|
||||
if (ReferenceEquals(_0, null))
|
||||
|
@ -40659,8 +40697,17 @@ namespace CppSharp
|
|||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?ParseHeader@ClangParser@CppParser@CppSharp@@SAPAUParserResult@23@PAUCppParserOptions@23@@Z", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr ParseHeader(__IntPtr Opts);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?ParseLibrary@ClangParser@CppParser@CppSharp@@SAPAUParserResult@23@PAULinkerOptions@23@@Z", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?ParseLibrary@ClangParser@CppParser@CppSharp@@SAPAUParserResult@23@PAUCppLinkerOptions@23@@Z", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr ParseLibrary(__IntPtr Opts);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?Build@ClangParser@CppParser@CppSharp@@SAPAUParserResult@23@PAUCppParserOptions@23@PBUCppLinkerOptions@23@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@_N@Z", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr Build(__IntPtr Opts, __IntPtr LinkerOptions, __IntPtr File, bool Last);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?Compile@ClangParser@CppParser@CppSharp@@SAPAUParserResult@23@PAUCppParserOptions@23@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr Compile(__IntPtr Opts, __IntPtr File);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?Link@ClangParser@CppParser@CppSharp@@SAPAUParserResult@23@PAUCppParserOptions@23@PBUCppLinkerOptions@23@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@_N@Z", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr Link(__IntPtr Opts, __IntPtr LinkerOptions, __IntPtr File, bool Last);
|
||||
}
|
||||
|
||||
public __IntPtr __Instance { get; protected set; }
|
||||
|
@ -40753,13 +40800,51 @@ namespace CppSharp
|
|||
return __result0;
|
||||
}
|
||||
|
||||
public static global::CppSharp.Parser.ParserResult ParseLibrary(global::CppSharp.Parser.LinkerOptions Opts)
|
||||
public static global::CppSharp.Parser.ParserResult ParseLibrary(global::CppSharp.Parser.CppLinkerOptions Opts)
|
||||
{
|
||||
var __arg0 = Opts is null ? __IntPtr.Zero : Opts.__Instance;
|
||||
var __ret = __Internal.ParseLibrary(__arg0);
|
||||
var __result0 = global::CppSharp.Parser.ParserResult.__GetOrCreateInstance(__ret, false);
|
||||
return __result0;
|
||||
}
|
||||
|
||||
public static global::CppSharp.Parser.ParserResult Build(global::CppSharp.Parser.CppParserOptions Opts, global::CppSharp.Parser.CppLinkerOptions LinkerOptions, string File, bool Last)
|
||||
{
|
||||
var __arg0 = Opts is null ? __IntPtr.Zero : Opts.__Instance;
|
||||
var __arg1 = LinkerOptions is null ? __IntPtr.Zero : LinkerOptions.__Instance;
|
||||
var __basicString2 = new global::Std.BasicString<sbyte, global::Std.CharTraits<sbyte>, global::Std.Allocator<sbyte>>();
|
||||
global::Std.BasicStringExtensions.Assign(__basicString2, File);
|
||||
var __arg2 = __basicString2.__Instance;
|
||||
var __ret = __Internal.Build(__arg0, __arg1, __arg2, Last);
|
||||
__basicString2.Dispose();
|
||||
var __result0 = global::CppSharp.Parser.ParserResult.__GetOrCreateInstance(__ret, false);
|
||||
return __result0;
|
||||
}
|
||||
|
||||
public static global::CppSharp.Parser.ParserResult Compile(global::CppSharp.Parser.CppParserOptions Opts, string File)
|
||||
{
|
||||
var __arg0 = Opts is null ? __IntPtr.Zero : Opts.__Instance;
|
||||
var __basicString1 = new global::Std.BasicString<sbyte, global::Std.CharTraits<sbyte>, global::Std.Allocator<sbyte>>();
|
||||
global::Std.BasicStringExtensions.Assign(__basicString1, File);
|
||||
var __arg1 = __basicString1.__Instance;
|
||||
var __ret = __Internal.Compile(__arg0, __arg1);
|
||||
__basicString1.Dispose();
|
||||
var __result0 = global::CppSharp.Parser.ParserResult.__GetOrCreateInstance(__ret, false);
|
||||
return __result0;
|
||||
}
|
||||
|
||||
public static global::CppSharp.Parser.ParserResult Link(global::CppSharp.Parser.CppParserOptions Opts, global::CppSharp.Parser.CppLinkerOptions LinkerOptions, string File, bool Last)
|
||||
{
|
||||
var __arg0 = Opts is null ? __IntPtr.Zero : Opts.__Instance;
|
||||
var __arg1 = LinkerOptions is null ? __IntPtr.Zero : LinkerOptions.__Instance;
|
||||
var __basicString2 = new global::Std.BasicString<sbyte, global::Std.CharTraits<sbyte>, global::Std.Allocator<sbyte>>();
|
||||
global::Std.BasicStringExtensions.Assign(__basicString2, File);
|
||||
var __arg2 = __basicString2.__Instance;
|
||||
var __ret = __Internal.Link(__arg0, __arg1, __arg2, Last);
|
||||
__basicString2.Dispose();
|
||||
var __result0 = global::CppSharp.Parser.ParserResult.__GetOrCreateInstance(__ret, false);
|
||||
return __result0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -372,8 +372,8 @@ extern "C" void c__N_CppSharp_N_CppParser_S_ParserTargetInfo_ParserTargetInfo___
|
|||
struct CppSharp::CppParser::ParserTargetInfo& (CppSharp::CppParser::ParserTargetInfo::*_239)(const struct CppSharp::CppParser::ParserTargetInfo&) = &CppSharp::CppParser::ParserTargetInfo::operator=;
|
||||
extern "C" void c__N_CppSharp_N_CppParser_S_CppParserOptions_CppParserOptions___1__N_CppSharp_N_CppParser_S_CppParserOptions(void* __instance, const CppSharp::CppParser::CppParserOptions& _0) { ::new (__instance) CppSharp::CppParser::CppParserOptions(_0); }
|
||||
struct CppSharp::CppParser::CppParserOptions& (CppSharp::CppParser::CppParserOptions::*_240)(const struct CppSharp::CppParser::CppParserOptions&) = &CppSharp::CppParser::CppParserOptions::operator=;
|
||||
extern "C" void c__N_CppSharp_N_CppParser_S_LinkerOptions_LinkerOptions___1__N_CppSharp_N_CppParser_S_LinkerOptions(void* __instance, const CppSharp::CppParser::LinkerOptions& _0) { ::new (__instance) CppSharp::CppParser::LinkerOptions(_0); }
|
||||
struct CppSharp::CppParser::LinkerOptions& (CppSharp::CppParser::LinkerOptions::*_241)(const struct CppSharp::CppParser::LinkerOptions&) = &CppSharp::CppParser::LinkerOptions::operator=;
|
||||
extern "C" void c__N_CppSharp_N_CppParser_S_CppLinkerOptions_CppLinkerOptions___1__N_CppSharp_N_CppParser_S_CppLinkerOptions(void* __instance, const CppSharp::CppParser::CppLinkerOptions& _0) { ::new (__instance) CppSharp::CppParser::CppLinkerOptions(_0); }
|
||||
struct CppSharp::CppParser::CppLinkerOptions& (CppSharp::CppParser::CppLinkerOptions::*_241)(const struct CppSharp::CppParser::CppLinkerOptions&) = &CppSharp::CppParser::CppLinkerOptions::operator=;
|
||||
struct CppSharp::CppParser::ParserDiagnostic& (CppSharp::CppParser::ParserDiagnostic::*_242)(const struct CppSharp::CppParser::ParserDiagnostic&) = &CppSharp::CppParser::ParserDiagnostic::operator=;
|
||||
struct CppSharp::CppParser::ParserResult& (CppSharp::CppParser::ParserResult::*_243)(const struct CppSharp::CppParser::ParserResult&) = &CppSharp::CppParser::ParserResult::operator=;
|
||||
class CppSharp::CppParser::ClangParser& (CppSharp::CppParser::ClangParser::*_244)(class CppSharp::CppParser::ClangParser&&) = &CppSharp::CppParser::ClangParser::operator=;
|
||||
|
|
|
@ -39477,10 +39477,11 @@ namespace CppSharp
|
|||
|
||||
public unsafe partial class CppParserOptions : IDisposable
|
||||
{
|
||||
[StructLayout(LayoutKind.Sequential, Size = 240)]
|
||||
[StructLayout(LayoutKind.Sequential, Size = 264)]
|
||||
public partial struct __Internal
|
||||
{
|
||||
internal global::Std.Vector.__Internalc__N_std_N___1_S_vector____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C___N_std_N___1_S_allocator__S0_ Arguments;
|
||||
internal global::Std.Vector.__Internalc__N_std_N___1_S_vector____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C___N_std_N___1_S_allocator__S0_ CompilationOptions;
|
||||
internal global::Std.Vector.__Internalc__N_std_N___1_S_vector____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C___N_std_N___1_S_allocator__S0_ SourceFiles;
|
||||
internal global::Std.Vector.__Internalc__N_std_N___1_S_vector____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C___N_std_N___1_S_allocator__S0_ IncludeDirs;
|
||||
internal global::Std.Vector.__Internalc__N_std_N___1_S_vector____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C___N_std_N___1_S_allocator__S0_ SystemIncludeDirs;
|
||||
|
@ -39518,6 +39519,15 @@ namespace CppSharp
|
|||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppParserOptions14clearArgumentsEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void ClearArguments(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppParserOptions21getCompilationOptionsEj", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr GetCompilationOptions(__IntPtr __instance, uint i);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppParserOptions21addCompilationOptionsEPKc", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void AddCompilationOptions(__IntPtr __instance, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(CppSharp.Runtime.UTF8Marshaller))] string s);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppParserOptions23clearCompilationOptionsEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void ClearCompilationOptions(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppParserOptions14getSourceFilesEj", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr GetSourceFiles(__IntPtr __instance, uint i);
|
||||
|
||||
|
@ -39578,6 +39588,9 @@ namespace CppSharp
|
|||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppParserOptions17getArgumentsCountEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern uint GetArgumentsCount(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppParserOptions26getCompilationOptionsCountEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern uint GetCompilationOptionsCount(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppParserOptions19getSourceFilesCountEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern uint GetSourceFilesCount(__IntPtr __instance);
|
||||
|
||||
|
@ -39701,6 +39714,22 @@ namespace CppSharp
|
|||
__Internal.ClearArguments(__Instance);
|
||||
}
|
||||
|
||||
public string GetCompilationOptions(uint i)
|
||||
{
|
||||
var __ret = __Internal.GetCompilationOptions(__Instance, i);
|
||||
return CppSharp.Runtime.MarshalUtil.GetString(global::System.Text.Encoding.UTF8, __ret);
|
||||
}
|
||||
|
||||
public void AddCompilationOptions(string s)
|
||||
{
|
||||
__Internal.AddCompilationOptions(__Instance, s);
|
||||
}
|
||||
|
||||
public void ClearCompilationOptions()
|
||||
{
|
||||
__Internal.ClearCompilationOptions(__Instance);
|
||||
}
|
||||
|
||||
public string GetSourceFiles(uint i)
|
||||
{
|
||||
var __ret = __Internal.GetSourceFiles(__Instance, i);
|
||||
|
@ -39964,6 +39993,15 @@ namespace CppSharp
|
|||
}
|
||||
}
|
||||
|
||||
public uint CompilationOptionsCount
|
||||
{
|
||||
get
|
||||
{
|
||||
var __ret = __Internal.GetCompilationOptionsCount(__Instance);
|
||||
return __ret;
|
||||
}
|
||||
}
|
||||
|
||||
public uint SourceFilesCount
|
||||
{
|
||||
get
|
||||
|
@ -40019,7 +40057,7 @@ namespace CppSharp
|
|||
}
|
||||
}
|
||||
|
||||
public unsafe partial class LinkerOptions : IDisposable
|
||||
public unsafe partial class CppLinkerOptions : IDisposable
|
||||
{
|
||||
[StructLayout(LayoutKind.Sequential, Size = 72)]
|
||||
public partial struct __Internal
|
||||
|
@ -40028,112 +40066,112 @@ namespace CppSharp
|
|||
internal global::Std.Vector.__Internalc__N_std_N___1_S_vector____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C___N_std_N___1_S_allocator__S0_ LibraryDirs;
|
||||
internal global::Std.Vector.__Internalc__N_std_N___1_S_vector____N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C___N_std_N___1_S_allocator__S0_ Libraries;
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptionsC2Ev", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptionsC2Ev", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void ctor(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptionsC2ERKS1_", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptionsC2ERKS1_", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void cctor(__IntPtr __instance, __IntPtr _0);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptionsD2Ev", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptionsD2Ev", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void dtor(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions12getArgumentsEj", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions12getArgumentsEj", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr GetArguments(__IntPtr __instance, uint i);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions12addArgumentsEPKc", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions12addArgumentsEPKc", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void AddArguments(__IntPtr __instance, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(CppSharp.Runtime.UTF8Marshaller))] string s);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions14clearArgumentsEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions14clearArgumentsEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void ClearArguments(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions14getLibraryDirsEj", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions14getLibraryDirsEj", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr GetLibraryDirs(__IntPtr __instance, uint i);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions14addLibraryDirsEPKc", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions14addLibraryDirsEPKc", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void AddLibraryDirs(__IntPtr __instance, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(CppSharp.Runtime.UTF8Marshaller))] string s);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions16clearLibraryDirsEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions16clearLibraryDirsEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void ClearLibraryDirs(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions12getLibrariesEj", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions12getLibrariesEj", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr GetLibraries(__IntPtr __instance, uint i);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions12addLibrariesEPKc", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions12addLibrariesEPKc", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void AddLibraries(__IntPtr __instance, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(CppSharp.Runtime.UTF8Marshaller))] string s);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions14clearLibrariesEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions14clearLibrariesEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void ClearLibraries(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions17getArgumentsCountEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions17getArgumentsCountEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern uint GetArgumentsCount(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions19getLibraryDirsCountEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions19getLibraryDirsCountEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern uint GetLibraryDirsCount(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions17getLibrariesCountEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions17getLibrariesCountEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern uint GetLibrariesCount(__IntPtr __instance);
|
||||
}
|
||||
|
||||
public __IntPtr __Instance { get; protected set; }
|
||||
|
||||
internal static readonly global::System.Collections.Concurrent.ConcurrentDictionary<IntPtr, global::CppSharp.Parser.LinkerOptions> NativeToManagedMap = new global::System.Collections.Concurrent.ConcurrentDictionary<IntPtr, global::CppSharp.Parser.LinkerOptions>();
|
||||
internal static readonly global::System.Collections.Concurrent.ConcurrentDictionary<IntPtr, global::CppSharp.Parser.CppLinkerOptions> NativeToManagedMap = new global::System.Collections.Concurrent.ConcurrentDictionary<IntPtr, global::CppSharp.Parser.CppLinkerOptions>();
|
||||
|
||||
protected bool __ownsNativeInstance;
|
||||
|
||||
internal static LinkerOptions __CreateInstance(__IntPtr native, bool skipVTables = false)
|
||||
internal static CppLinkerOptions __CreateInstance(__IntPtr native, bool skipVTables = false)
|
||||
{
|
||||
return new LinkerOptions(native.ToPointer(), skipVTables);
|
||||
return new CppLinkerOptions(native.ToPointer(), skipVTables);
|
||||
}
|
||||
|
||||
internal static LinkerOptions __GetOrCreateInstance(__IntPtr native, bool saveInstance = false, bool skipVTables = false)
|
||||
internal static CppLinkerOptions __GetOrCreateInstance(__IntPtr native, bool saveInstance = false, bool skipVTables = false)
|
||||
{
|
||||
if (native == __IntPtr.Zero)
|
||||
return null;
|
||||
if (NativeToManagedMap.TryGetValue(native, out var managed))
|
||||
return (LinkerOptions)managed;
|
||||
return (CppLinkerOptions)managed;
|
||||
var result = __CreateInstance(native, skipVTables);
|
||||
if (saveInstance)
|
||||
NativeToManagedMap[native] = result;
|
||||
return result;
|
||||
}
|
||||
|
||||
internal static LinkerOptions __CreateInstance(__Internal native, bool skipVTables = false)
|
||||
internal static CppLinkerOptions __CreateInstance(__Internal native, bool skipVTables = false)
|
||||
{
|
||||
return new LinkerOptions(native, skipVTables);
|
||||
return new CppLinkerOptions(native, skipVTables);
|
||||
}
|
||||
|
||||
private static void* __CopyValue(__Internal native)
|
||||
{
|
||||
var ret = Marshal.AllocHGlobal(sizeof(__Internal));
|
||||
global::CppSharp.Parser.LinkerOptions.__Internal.cctor(ret, new __IntPtr(&native));
|
||||
global::CppSharp.Parser.CppLinkerOptions.__Internal.cctor(ret, new __IntPtr(&native));
|
||||
return ret.ToPointer();
|
||||
}
|
||||
|
||||
private LinkerOptions(__Internal native, bool skipVTables = false)
|
||||
private CppLinkerOptions(__Internal native, bool skipVTables = false)
|
||||
: this(__CopyValue(native), skipVTables)
|
||||
{
|
||||
__ownsNativeInstance = true;
|
||||
NativeToManagedMap[__Instance] = this;
|
||||
}
|
||||
|
||||
protected LinkerOptions(void* native, bool skipVTables = false)
|
||||
protected CppLinkerOptions(void* native, bool skipVTables = false)
|
||||
{
|
||||
if (native == null)
|
||||
return;
|
||||
__Instance = new __IntPtr(native);
|
||||
}
|
||||
|
||||
public LinkerOptions()
|
||||
public CppLinkerOptions()
|
||||
{
|
||||
__Instance = Marshal.AllocHGlobal(sizeof(global::CppSharp.Parser.LinkerOptions.__Internal));
|
||||
__Instance = Marshal.AllocHGlobal(sizeof(global::CppSharp.Parser.CppLinkerOptions.__Internal));
|
||||
__ownsNativeInstance = true;
|
||||
NativeToManagedMap[__Instance] = this;
|
||||
__Internal.ctor(__Instance);
|
||||
}
|
||||
|
||||
public LinkerOptions(global::CppSharp.Parser.LinkerOptions _0)
|
||||
public CppLinkerOptions(global::CppSharp.Parser.CppLinkerOptions _0)
|
||||
{
|
||||
__Instance = Marshal.AllocHGlobal(sizeof(global::CppSharp.Parser.LinkerOptions.__Internal));
|
||||
__Instance = Marshal.AllocHGlobal(sizeof(global::CppSharp.Parser.CppLinkerOptions.__Internal));
|
||||
__ownsNativeInstance = true;
|
||||
NativeToManagedMap[__Instance] = this;
|
||||
if (ReferenceEquals(_0, null))
|
||||
|
@ -40647,8 +40685,17 @@ namespace CppSharp
|
|||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser11ClangParser11ParseHeaderEPNS0_16CppParserOptionsE", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr ParseHeader(__IntPtr Opts);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser11ClangParser12ParseLibraryEPNS0_13LinkerOptionsE", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser11ClangParser12ParseLibraryEPNS0_16CppLinkerOptionsE", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr ParseLibrary(__IntPtr Opts);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser11ClangParser5BuildEPNS0_16CppParserOptionsEPKNS0_16CppLinkerOptionsERKNSt3__112basic_stringIcNS7_11char_traitsIcEENS7_9allocatorIcEEEEb", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr Build(__IntPtr Opts, __IntPtr LinkerOptions, __IntPtr File, bool Last);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser11ClangParser7CompileEPNS0_16CppParserOptionsERKNSt3__112basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEE", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr Compile(__IntPtr Opts, __IntPtr File);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser11ClangParser4LinkEPNS0_16CppParserOptionsEPKNS0_16CppLinkerOptionsERKNSt3__112basic_stringIcNS7_11char_traitsIcEENS7_9allocatorIcEEEEb", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr Link(__IntPtr Opts, __IntPtr LinkerOptions, __IntPtr File, bool Last);
|
||||
}
|
||||
|
||||
public __IntPtr __Instance { get; protected set; }
|
||||
|
@ -40741,13 +40788,51 @@ namespace CppSharp
|
|||
return __result0;
|
||||
}
|
||||
|
||||
public static global::CppSharp.Parser.ParserResult ParseLibrary(global::CppSharp.Parser.LinkerOptions Opts)
|
||||
public static global::CppSharp.Parser.ParserResult ParseLibrary(global::CppSharp.Parser.CppLinkerOptions Opts)
|
||||
{
|
||||
var __arg0 = Opts is null ? __IntPtr.Zero : Opts.__Instance;
|
||||
var __ret = __Internal.ParseLibrary(__arg0);
|
||||
var __result0 = global::CppSharp.Parser.ParserResult.__GetOrCreateInstance(__ret, false);
|
||||
return __result0;
|
||||
}
|
||||
|
||||
public static global::CppSharp.Parser.ParserResult Build(global::CppSharp.Parser.CppParserOptions Opts, global::CppSharp.Parser.CppLinkerOptions LinkerOptions, string File, bool Last)
|
||||
{
|
||||
var __arg0 = Opts is null ? __IntPtr.Zero : Opts.__Instance;
|
||||
var __arg1 = LinkerOptions is null ? __IntPtr.Zero : LinkerOptions.__Instance;
|
||||
var __basicString2 = new global::Std.BasicString<sbyte, global::Std.CharTraits<sbyte>, global::Std.Allocator<sbyte>>();
|
||||
global::Std.BasicStringExtensions.Assign(__basicString2, File);
|
||||
var __arg2 = __basicString2.__Instance;
|
||||
var __ret = __Internal.Build(__arg0, __arg1, __arg2, Last);
|
||||
__basicString2.Dispose();
|
||||
var __result0 = global::CppSharp.Parser.ParserResult.__GetOrCreateInstance(__ret, false);
|
||||
return __result0;
|
||||
}
|
||||
|
||||
public static global::CppSharp.Parser.ParserResult Compile(global::CppSharp.Parser.CppParserOptions Opts, string File)
|
||||
{
|
||||
var __arg0 = Opts is null ? __IntPtr.Zero : Opts.__Instance;
|
||||
var __basicString1 = new global::Std.BasicString<sbyte, global::Std.CharTraits<sbyte>, global::Std.Allocator<sbyte>>();
|
||||
global::Std.BasicStringExtensions.Assign(__basicString1, File);
|
||||
var __arg1 = __basicString1.__Instance;
|
||||
var __ret = __Internal.Compile(__arg0, __arg1);
|
||||
__basicString1.Dispose();
|
||||
var __result0 = global::CppSharp.Parser.ParserResult.__GetOrCreateInstance(__ret, false);
|
||||
return __result0;
|
||||
}
|
||||
|
||||
public static global::CppSharp.Parser.ParserResult Link(global::CppSharp.Parser.CppParserOptions Opts, global::CppSharp.Parser.CppLinkerOptions LinkerOptions, string File, bool Last)
|
||||
{
|
||||
var __arg0 = Opts is null ? __IntPtr.Zero : Opts.__Instance;
|
||||
var __arg1 = LinkerOptions is null ? __IntPtr.Zero : LinkerOptions.__Instance;
|
||||
var __basicString2 = new global::Std.BasicString<sbyte, global::Std.CharTraits<sbyte>, global::Std.Allocator<sbyte>>();
|
||||
global::Std.BasicStringExtensions.Assign(__basicString2, File);
|
||||
var __arg2 = __basicString2.__Instance;
|
||||
var __ret = __Internal.Link(__arg0, __arg1, __arg2, Last);
|
||||
__basicString2.Dispose();
|
||||
var __result0 = global::CppSharp.Parser.ParserResult.__GetOrCreateInstance(__ret, false);
|
||||
return __result0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -372,8 +372,8 @@ extern "C" void c__N_CppSharp_N_CppParser_S_ParserTargetInfo_ParserTargetInfo___
|
|||
struct CppSharp::CppParser::ParserTargetInfo& (CppSharp::CppParser::ParserTargetInfo::*_239)(const struct CppSharp::CppParser::ParserTargetInfo&) = &CppSharp::CppParser::ParserTargetInfo::operator=;
|
||||
extern "C" void c__N_CppSharp_N_CppParser_S_CppParserOptions_CppParserOptions___1__N_CppSharp_N_CppParser_S_CppParserOptions(void* __instance, const CppSharp::CppParser::CppParserOptions& _0) { ::new (__instance) CppSharp::CppParser::CppParserOptions(_0); }
|
||||
struct CppSharp::CppParser::CppParserOptions& (CppSharp::CppParser::CppParserOptions::*_240)(const struct CppSharp::CppParser::CppParserOptions&) = &CppSharp::CppParser::CppParserOptions::operator=;
|
||||
extern "C" void c__N_CppSharp_N_CppParser_S_LinkerOptions_LinkerOptions___1__N_CppSharp_N_CppParser_S_LinkerOptions(void* __instance, const CppSharp::CppParser::LinkerOptions& _0) { ::new (__instance) CppSharp::CppParser::LinkerOptions(_0); }
|
||||
struct CppSharp::CppParser::LinkerOptions& (CppSharp::CppParser::LinkerOptions::*_241)(const struct CppSharp::CppParser::LinkerOptions&) = &CppSharp::CppParser::LinkerOptions::operator=;
|
||||
extern "C" void c__N_CppSharp_N_CppParser_S_CppLinkerOptions_CppLinkerOptions___1__N_CppSharp_N_CppParser_S_CppLinkerOptions(void* __instance, const CppSharp::CppParser::CppLinkerOptions& _0) { ::new (__instance) CppSharp::CppParser::CppLinkerOptions(_0); }
|
||||
struct CppSharp::CppParser::CppLinkerOptions& (CppSharp::CppParser::CppLinkerOptions::*_241)(const struct CppSharp::CppParser::CppLinkerOptions&) = &CppSharp::CppParser::CppLinkerOptions::operator=;
|
||||
struct CppSharp::CppParser::ParserDiagnostic& (CppSharp::CppParser::ParserDiagnostic::*_242)(const struct CppSharp::CppParser::ParserDiagnostic&) = &CppSharp::CppParser::ParserDiagnostic::operator=;
|
||||
struct CppSharp::CppParser::ParserResult& (CppSharp::CppParser::ParserResult::*_243)(const struct CppSharp::CppParser::ParserResult&) = &CppSharp::CppParser::ParserResult::operator=;
|
||||
class CppSharp::CppParser::ClangParser& (CppSharp::CppParser::ClangParser::*_244)(class CppSharp::CppParser::ClangParser&&) = &CppSharp::CppParser::ClangParser::operator=;
|
||||
|
|
|
@ -39477,10 +39477,11 @@ namespace CppSharp
|
|||
|
||||
public unsafe partial class CppParserOptions : IDisposable
|
||||
{
|
||||
[StructLayout(LayoutKind.Sequential, Size = 256)]
|
||||
[StructLayout(LayoutKind.Sequential, Size = 280)]
|
||||
public partial struct __Internal
|
||||
{
|
||||
internal global::Std.Vector.__Internalc__N_std_S_vector____N_std_N___cxx11_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C___N_std_S_allocator__S0_ Arguments;
|
||||
internal global::Std.Vector.__Internalc__N_std_S_vector____N_std_N___cxx11_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C___N_std_S_allocator__S0_ CompilationOptions;
|
||||
internal global::Std.Vector.__Internalc__N_std_S_vector____N_std_N___cxx11_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C___N_std_S_allocator__S0_ SourceFiles;
|
||||
internal global::Std.Vector.__Internalc__N_std_S_vector____N_std_N___cxx11_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C___N_std_S_allocator__S0_ IncludeDirs;
|
||||
internal global::Std.Vector.__Internalc__N_std_S_vector____N_std_N___cxx11_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C___N_std_S_allocator__S0_ SystemIncludeDirs;
|
||||
|
@ -39518,6 +39519,15 @@ namespace CppSharp
|
|||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppParserOptions14clearArgumentsEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void ClearArguments(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppParserOptions21getCompilationOptionsEj", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr GetCompilationOptions(__IntPtr __instance, uint i);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppParserOptions21addCompilationOptionsEPKc", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void AddCompilationOptions(__IntPtr __instance, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(CppSharp.Runtime.UTF8Marshaller))] string s);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppParserOptions23clearCompilationOptionsEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void ClearCompilationOptions(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppParserOptions14getSourceFilesEj", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr GetSourceFiles(__IntPtr __instance, uint i);
|
||||
|
||||
|
@ -39578,6 +39588,9 @@ namespace CppSharp
|
|||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppParserOptions17getArgumentsCountEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern uint GetArgumentsCount(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppParserOptions26getCompilationOptionsCountEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern uint GetCompilationOptionsCount(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppParserOptions19getSourceFilesCountEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern uint GetSourceFilesCount(__IntPtr __instance);
|
||||
|
||||
|
@ -39701,6 +39714,22 @@ namespace CppSharp
|
|||
__Internal.ClearArguments(__Instance);
|
||||
}
|
||||
|
||||
public string GetCompilationOptions(uint i)
|
||||
{
|
||||
var __ret = __Internal.GetCompilationOptions(__Instance, i);
|
||||
return CppSharp.Runtime.MarshalUtil.GetString(global::System.Text.Encoding.UTF8, __ret);
|
||||
}
|
||||
|
||||
public void AddCompilationOptions(string s)
|
||||
{
|
||||
__Internal.AddCompilationOptions(__Instance, s);
|
||||
}
|
||||
|
||||
public void ClearCompilationOptions()
|
||||
{
|
||||
__Internal.ClearCompilationOptions(__Instance);
|
||||
}
|
||||
|
||||
public string GetSourceFiles(uint i)
|
||||
{
|
||||
var __ret = __Internal.GetSourceFiles(__Instance, i);
|
||||
|
@ -39964,6 +39993,15 @@ namespace CppSharp
|
|||
}
|
||||
}
|
||||
|
||||
public uint CompilationOptionsCount
|
||||
{
|
||||
get
|
||||
{
|
||||
var __ret = __Internal.GetCompilationOptionsCount(__Instance);
|
||||
return __ret;
|
||||
}
|
||||
}
|
||||
|
||||
public uint SourceFilesCount
|
||||
{
|
||||
get
|
||||
|
@ -40019,7 +40057,7 @@ namespace CppSharp
|
|||
}
|
||||
}
|
||||
|
||||
public unsafe partial class LinkerOptions : IDisposable
|
||||
public unsafe partial class CppLinkerOptions : IDisposable
|
||||
{
|
||||
[StructLayout(LayoutKind.Sequential, Size = 72)]
|
||||
public partial struct __Internal
|
||||
|
@ -40028,112 +40066,112 @@ namespace CppSharp
|
|||
internal global::Std.Vector.__Internalc__N_std_S_vector____N_std_N___cxx11_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C___N_std_S_allocator__S0_ LibraryDirs;
|
||||
internal global::Std.Vector.__Internalc__N_std_S_vector____N_std_N___cxx11_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C___N_std_S_allocator__S0_ Libraries;
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptionsC2Ev", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptionsC2Ev", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void ctor(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptionsC2ERKS1_", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptionsC2ERKS1_", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void cctor(__IntPtr __instance, __IntPtr _0);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptionsD2Ev", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptionsD2Ev", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void dtor(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions12getArgumentsEj", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions12getArgumentsEj", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr GetArguments(__IntPtr __instance, uint i);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions12addArgumentsEPKc", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions12addArgumentsEPKc", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void AddArguments(__IntPtr __instance, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(CppSharp.Runtime.UTF8Marshaller))] string s);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions14clearArgumentsEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions14clearArgumentsEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void ClearArguments(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions14getLibraryDirsEj", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions14getLibraryDirsEj", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr GetLibraryDirs(__IntPtr __instance, uint i);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions14addLibraryDirsEPKc", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions14addLibraryDirsEPKc", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void AddLibraryDirs(__IntPtr __instance, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(CppSharp.Runtime.UTF8Marshaller))] string s);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions16clearLibraryDirsEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions16clearLibraryDirsEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void ClearLibraryDirs(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions12getLibrariesEj", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions12getLibrariesEj", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr GetLibraries(__IntPtr __instance, uint i);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions12addLibrariesEPKc", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions12addLibrariesEPKc", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void AddLibraries(__IntPtr __instance, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(CppSharp.Runtime.UTF8Marshaller))] string s);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions14clearLibrariesEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions14clearLibrariesEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void ClearLibraries(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions17getArgumentsCountEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions17getArgumentsCountEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern uint GetArgumentsCount(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions19getLibraryDirsCountEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions19getLibraryDirsCountEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern uint GetLibraryDirsCount(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions17getLibrariesCountEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions17getLibrariesCountEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern uint GetLibrariesCount(__IntPtr __instance);
|
||||
}
|
||||
|
||||
public __IntPtr __Instance { get; protected set; }
|
||||
|
||||
internal static readonly global::System.Collections.Concurrent.ConcurrentDictionary<IntPtr, global::CppSharp.Parser.LinkerOptions> NativeToManagedMap = new global::System.Collections.Concurrent.ConcurrentDictionary<IntPtr, global::CppSharp.Parser.LinkerOptions>();
|
||||
internal static readonly global::System.Collections.Concurrent.ConcurrentDictionary<IntPtr, global::CppSharp.Parser.CppLinkerOptions> NativeToManagedMap = new global::System.Collections.Concurrent.ConcurrentDictionary<IntPtr, global::CppSharp.Parser.CppLinkerOptions>();
|
||||
|
||||
protected bool __ownsNativeInstance;
|
||||
|
||||
internal static LinkerOptions __CreateInstance(__IntPtr native, bool skipVTables = false)
|
||||
internal static CppLinkerOptions __CreateInstance(__IntPtr native, bool skipVTables = false)
|
||||
{
|
||||
return new LinkerOptions(native.ToPointer(), skipVTables);
|
||||
return new CppLinkerOptions(native.ToPointer(), skipVTables);
|
||||
}
|
||||
|
||||
internal static LinkerOptions __GetOrCreateInstance(__IntPtr native, bool saveInstance = false, bool skipVTables = false)
|
||||
internal static CppLinkerOptions __GetOrCreateInstance(__IntPtr native, bool saveInstance = false, bool skipVTables = false)
|
||||
{
|
||||
if (native == __IntPtr.Zero)
|
||||
return null;
|
||||
if (NativeToManagedMap.TryGetValue(native, out var managed))
|
||||
return (LinkerOptions)managed;
|
||||
return (CppLinkerOptions)managed;
|
||||
var result = __CreateInstance(native, skipVTables);
|
||||
if (saveInstance)
|
||||
NativeToManagedMap[native] = result;
|
||||
return result;
|
||||
}
|
||||
|
||||
internal static LinkerOptions __CreateInstance(__Internal native, bool skipVTables = false)
|
||||
internal static CppLinkerOptions __CreateInstance(__Internal native, bool skipVTables = false)
|
||||
{
|
||||
return new LinkerOptions(native, skipVTables);
|
||||
return new CppLinkerOptions(native, skipVTables);
|
||||
}
|
||||
|
||||
private static void* __CopyValue(__Internal native)
|
||||
{
|
||||
var ret = Marshal.AllocHGlobal(sizeof(__Internal));
|
||||
global::CppSharp.Parser.LinkerOptions.__Internal.cctor(ret, new __IntPtr(&native));
|
||||
global::CppSharp.Parser.CppLinkerOptions.__Internal.cctor(ret, new __IntPtr(&native));
|
||||
return ret.ToPointer();
|
||||
}
|
||||
|
||||
private LinkerOptions(__Internal native, bool skipVTables = false)
|
||||
private CppLinkerOptions(__Internal native, bool skipVTables = false)
|
||||
: this(__CopyValue(native), skipVTables)
|
||||
{
|
||||
__ownsNativeInstance = true;
|
||||
NativeToManagedMap[__Instance] = this;
|
||||
}
|
||||
|
||||
protected LinkerOptions(void* native, bool skipVTables = false)
|
||||
protected CppLinkerOptions(void* native, bool skipVTables = false)
|
||||
{
|
||||
if (native == null)
|
||||
return;
|
||||
__Instance = new __IntPtr(native);
|
||||
}
|
||||
|
||||
public LinkerOptions()
|
||||
public CppLinkerOptions()
|
||||
{
|
||||
__Instance = Marshal.AllocHGlobal(sizeof(global::CppSharp.Parser.LinkerOptions.__Internal));
|
||||
__Instance = Marshal.AllocHGlobal(sizeof(global::CppSharp.Parser.CppLinkerOptions.__Internal));
|
||||
__ownsNativeInstance = true;
|
||||
NativeToManagedMap[__Instance] = this;
|
||||
__Internal.ctor(__Instance);
|
||||
}
|
||||
|
||||
public LinkerOptions(global::CppSharp.Parser.LinkerOptions _0)
|
||||
public CppLinkerOptions(global::CppSharp.Parser.CppLinkerOptions _0)
|
||||
{
|
||||
__Instance = Marshal.AllocHGlobal(sizeof(global::CppSharp.Parser.LinkerOptions.__Internal));
|
||||
__Instance = Marshal.AllocHGlobal(sizeof(global::CppSharp.Parser.CppLinkerOptions.__Internal));
|
||||
__ownsNativeInstance = true;
|
||||
NativeToManagedMap[__Instance] = this;
|
||||
if (ReferenceEquals(_0, null))
|
||||
|
@ -40647,8 +40685,17 @@ namespace CppSharp
|
|||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser11ClangParser11ParseHeaderEPNS0_16CppParserOptionsE", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr ParseHeader(__IntPtr Opts);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser11ClangParser12ParseLibraryEPNS0_13LinkerOptionsE", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser11ClangParser12ParseLibraryEPNS0_16CppLinkerOptionsE", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr ParseLibrary(__IntPtr Opts);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser11ClangParser5BuildEPNS0_16CppParserOptionsEPKNS0_16CppLinkerOptionsERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEb", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr Build(__IntPtr Opts, __IntPtr LinkerOptions, __IntPtr File, bool Last);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser11ClangParser7CompileEPNS0_16CppParserOptionsERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr Compile(__IntPtr Opts, __IntPtr File);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser11ClangParser4LinkEPNS0_16CppParserOptionsEPKNS0_16CppLinkerOptionsERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEb", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr Link(__IntPtr Opts, __IntPtr LinkerOptions, __IntPtr File, bool Last);
|
||||
}
|
||||
|
||||
public __IntPtr __Instance { get; protected set; }
|
||||
|
@ -40741,13 +40788,51 @@ namespace CppSharp
|
|||
return __result0;
|
||||
}
|
||||
|
||||
public static global::CppSharp.Parser.ParserResult ParseLibrary(global::CppSharp.Parser.LinkerOptions Opts)
|
||||
public static global::CppSharp.Parser.ParserResult ParseLibrary(global::CppSharp.Parser.CppLinkerOptions Opts)
|
||||
{
|
||||
var __arg0 = Opts is null ? __IntPtr.Zero : Opts.__Instance;
|
||||
var __ret = __Internal.ParseLibrary(__arg0);
|
||||
var __result0 = global::CppSharp.Parser.ParserResult.__GetOrCreateInstance(__ret, false);
|
||||
return __result0;
|
||||
}
|
||||
|
||||
public static global::CppSharp.Parser.ParserResult Build(global::CppSharp.Parser.CppParserOptions Opts, global::CppSharp.Parser.CppLinkerOptions LinkerOptions, string File, bool Last)
|
||||
{
|
||||
var __arg0 = Opts is null ? __IntPtr.Zero : Opts.__Instance;
|
||||
var __arg1 = LinkerOptions is null ? __IntPtr.Zero : LinkerOptions.__Instance;
|
||||
var __basicString2 = new global::Std.BasicString<sbyte, global::Std.CharTraits<sbyte>, global::Std.Allocator<sbyte>>();
|
||||
global::Std.BasicStringExtensions.Assign(__basicString2, File);
|
||||
var __arg2 = __basicString2.__Instance;
|
||||
var __ret = __Internal.Build(__arg0, __arg1, __arg2, Last);
|
||||
__basicString2.Dispose();
|
||||
var __result0 = global::CppSharp.Parser.ParserResult.__GetOrCreateInstance(__ret, false);
|
||||
return __result0;
|
||||
}
|
||||
|
||||
public static global::CppSharp.Parser.ParserResult Compile(global::CppSharp.Parser.CppParserOptions Opts, string File)
|
||||
{
|
||||
var __arg0 = Opts is null ? __IntPtr.Zero : Opts.__Instance;
|
||||
var __basicString1 = new global::Std.BasicString<sbyte, global::Std.CharTraits<sbyte>, global::Std.Allocator<sbyte>>();
|
||||
global::Std.BasicStringExtensions.Assign(__basicString1, File);
|
||||
var __arg1 = __basicString1.__Instance;
|
||||
var __ret = __Internal.Compile(__arg0, __arg1);
|
||||
__basicString1.Dispose();
|
||||
var __result0 = global::CppSharp.Parser.ParserResult.__GetOrCreateInstance(__ret, false);
|
||||
return __result0;
|
||||
}
|
||||
|
||||
public static global::CppSharp.Parser.ParserResult Link(global::CppSharp.Parser.CppParserOptions Opts, global::CppSharp.Parser.CppLinkerOptions LinkerOptions, string File, bool Last)
|
||||
{
|
||||
var __arg0 = Opts is null ? __IntPtr.Zero : Opts.__Instance;
|
||||
var __arg1 = LinkerOptions is null ? __IntPtr.Zero : LinkerOptions.__Instance;
|
||||
var __basicString2 = new global::Std.BasicString<sbyte, global::Std.CharTraits<sbyte>, global::Std.Allocator<sbyte>>();
|
||||
global::Std.BasicStringExtensions.Assign(__basicString2, File);
|
||||
var __arg2 = __basicString2.__Instance;
|
||||
var __ret = __Internal.Link(__arg0, __arg1, __arg2, Last);
|
||||
__basicString2.Dispose();
|
||||
var __result0 = global::CppSharp.Parser.ParserResult.__GetOrCreateInstance(__ret, false);
|
||||
return __result0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -372,8 +372,8 @@ extern "C" void c__N_CppSharp_N_CppParser_S_ParserTargetInfo_ParserTargetInfo___
|
|||
struct CppSharp::CppParser::ParserTargetInfo& (CppSharp::CppParser::ParserTargetInfo::*_239)(const struct CppSharp::CppParser::ParserTargetInfo&) = &CppSharp::CppParser::ParserTargetInfo::operator=;
|
||||
extern "C" void c__N_CppSharp_N_CppParser_S_CppParserOptions_CppParserOptions___1__N_CppSharp_N_CppParser_S_CppParserOptions(void* __instance, const CppSharp::CppParser::CppParserOptions& _0) { ::new (__instance) CppSharp::CppParser::CppParserOptions(_0); }
|
||||
struct CppSharp::CppParser::CppParserOptions& (CppSharp::CppParser::CppParserOptions::*_240)(const struct CppSharp::CppParser::CppParserOptions&) = &CppSharp::CppParser::CppParserOptions::operator=;
|
||||
extern "C" void c__N_CppSharp_N_CppParser_S_LinkerOptions_LinkerOptions___1__N_CppSharp_N_CppParser_S_LinkerOptions(void* __instance, const CppSharp::CppParser::LinkerOptions& _0) { ::new (__instance) CppSharp::CppParser::LinkerOptions(_0); }
|
||||
struct CppSharp::CppParser::LinkerOptions& (CppSharp::CppParser::LinkerOptions::*_241)(const struct CppSharp::CppParser::LinkerOptions&) = &CppSharp::CppParser::LinkerOptions::operator=;
|
||||
extern "C" void c__N_CppSharp_N_CppParser_S_CppLinkerOptions_CppLinkerOptions___1__N_CppSharp_N_CppParser_S_CppLinkerOptions(void* __instance, const CppSharp::CppParser::CppLinkerOptions& _0) { ::new (__instance) CppSharp::CppParser::CppLinkerOptions(_0); }
|
||||
struct CppSharp::CppParser::CppLinkerOptions& (CppSharp::CppParser::CppLinkerOptions::*_241)(const struct CppSharp::CppParser::CppLinkerOptions&) = &CppSharp::CppParser::CppLinkerOptions::operator=;
|
||||
struct CppSharp::CppParser::ParserDiagnostic& (CppSharp::CppParser::ParserDiagnostic::*_242)(const struct CppSharp::CppParser::ParserDiagnostic&) = &CppSharp::CppParser::ParserDiagnostic::operator=;
|
||||
struct CppSharp::CppParser::ParserResult& (CppSharp::CppParser::ParserResult::*_243)(const struct CppSharp::CppParser::ParserResult&) = &CppSharp::CppParser::ParserResult::operator=;
|
||||
class CppSharp::CppParser::ClangParser& (CppSharp::CppParser::ClangParser::*_244)(class CppSharp::CppParser::ClangParser&&) = &CppSharp::CppParser::ClangParser::operator=;
|
||||
|
|
|
@ -39477,10 +39477,11 @@ namespace CppSharp
|
|||
|
||||
public unsafe partial class CppParserOptions : IDisposable
|
||||
{
|
||||
[StructLayout(LayoutKind.Sequential, Size = 208)]
|
||||
[StructLayout(LayoutKind.Sequential, Size = 232)]
|
||||
public partial struct __Internal
|
||||
{
|
||||
internal global::Std.Vector.__Internalc__N_std_S_vector____N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C___N_std_S_allocator__S0_ Arguments;
|
||||
internal global::Std.Vector.__Internalc__N_std_S_vector____N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C___N_std_S_allocator__S0_ CompilationOptions;
|
||||
internal global::Std.Vector.__Internalc__N_std_S_vector____N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C___N_std_S_allocator__S0_ SourceFiles;
|
||||
internal global::Std.Vector.__Internalc__N_std_S_vector____N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C___N_std_S_allocator__S0_ IncludeDirs;
|
||||
internal global::Std.Vector.__Internalc__N_std_S_vector____N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C___N_std_S_allocator__S0_ SystemIncludeDirs;
|
||||
|
@ -39518,6 +39519,15 @@ namespace CppSharp
|
|||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppParserOptions14clearArgumentsEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void ClearArguments(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppParserOptions21getCompilationOptionsEj", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr GetCompilationOptions(__IntPtr __instance, uint i);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppParserOptions21addCompilationOptionsEPKc", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void AddCompilationOptions(__IntPtr __instance, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(CppSharp.Runtime.UTF8Marshaller))] string s);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppParserOptions23clearCompilationOptionsEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void ClearCompilationOptions(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppParserOptions14getSourceFilesEj", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr GetSourceFiles(__IntPtr __instance, uint i);
|
||||
|
||||
|
@ -39578,6 +39588,9 @@ namespace CppSharp
|
|||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppParserOptions17getArgumentsCountEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern uint GetArgumentsCount(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppParserOptions26getCompilationOptionsCountEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern uint GetCompilationOptionsCount(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppParserOptions19getSourceFilesCountEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern uint GetSourceFilesCount(__IntPtr __instance);
|
||||
|
||||
|
@ -39701,6 +39714,22 @@ namespace CppSharp
|
|||
__Internal.ClearArguments(__Instance);
|
||||
}
|
||||
|
||||
public string GetCompilationOptions(uint i)
|
||||
{
|
||||
var __ret = __Internal.GetCompilationOptions(__Instance, i);
|
||||
return CppSharp.Runtime.MarshalUtil.GetString(global::System.Text.Encoding.UTF8, __ret);
|
||||
}
|
||||
|
||||
public void AddCompilationOptions(string s)
|
||||
{
|
||||
__Internal.AddCompilationOptions(__Instance, s);
|
||||
}
|
||||
|
||||
public void ClearCompilationOptions()
|
||||
{
|
||||
__Internal.ClearCompilationOptions(__Instance);
|
||||
}
|
||||
|
||||
public string GetSourceFiles(uint i)
|
||||
{
|
||||
var __ret = __Internal.GetSourceFiles(__Instance, i);
|
||||
|
@ -39964,6 +39993,15 @@ namespace CppSharp
|
|||
}
|
||||
}
|
||||
|
||||
public uint CompilationOptionsCount
|
||||
{
|
||||
get
|
||||
{
|
||||
var __ret = __Internal.GetCompilationOptionsCount(__Instance);
|
||||
return __ret;
|
||||
}
|
||||
}
|
||||
|
||||
public uint SourceFilesCount
|
||||
{
|
||||
get
|
||||
|
@ -40019,7 +40057,7 @@ namespace CppSharp
|
|||
}
|
||||
}
|
||||
|
||||
public unsafe partial class LinkerOptions : IDisposable
|
||||
public unsafe partial class CppLinkerOptions : IDisposable
|
||||
{
|
||||
[StructLayout(LayoutKind.Sequential, Size = 72)]
|
||||
public partial struct __Internal
|
||||
|
@ -40028,112 +40066,112 @@ namespace CppSharp
|
|||
internal global::Std.Vector.__Internalc__N_std_S_vector____N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C___N_std_S_allocator__S0_ LibraryDirs;
|
||||
internal global::Std.Vector.__Internalc__N_std_S_vector____N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C___N_std_S_allocator__S0_ Libraries;
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptionsC2Ev", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptionsC2Ev", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void ctor(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptionsC2ERKS1_", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptionsC2ERKS1_", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void cctor(__IntPtr __instance, __IntPtr _0);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptionsD2Ev", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptionsD2Ev", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void dtor(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions12getArgumentsEj", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions12getArgumentsEj", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr GetArguments(__IntPtr __instance, uint i);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions12addArgumentsEPKc", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions12addArgumentsEPKc", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void AddArguments(__IntPtr __instance, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(CppSharp.Runtime.UTF8Marshaller))] string s);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions14clearArgumentsEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions14clearArgumentsEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void ClearArguments(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions14getLibraryDirsEj", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions14getLibraryDirsEj", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr GetLibraryDirs(__IntPtr __instance, uint i);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions14addLibraryDirsEPKc", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions14addLibraryDirsEPKc", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void AddLibraryDirs(__IntPtr __instance, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(CppSharp.Runtime.UTF8Marshaller))] string s);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions16clearLibraryDirsEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions16clearLibraryDirsEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void ClearLibraryDirs(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions12getLibrariesEj", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions12getLibrariesEj", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr GetLibraries(__IntPtr __instance, uint i);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions12addLibrariesEPKc", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions12addLibrariesEPKc", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void AddLibraries(__IntPtr __instance, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(CppSharp.Runtime.UTF8Marshaller))] string s);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions14clearLibrariesEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions14clearLibrariesEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void ClearLibraries(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions17getArgumentsCountEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions17getArgumentsCountEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern uint GetArgumentsCount(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions19getLibraryDirsCountEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions19getLibraryDirsCountEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern uint GetLibraryDirsCount(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser13LinkerOptions17getLibrariesCountEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser16CppLinkerOptions17getLibrariesCountEv", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern uint GetLibrariesCount(__IntPtr __instance);
|
||||
}
|
||||
|
||||
public __IntPtr __Instance { get; protected set; }
|
||||
|
||||
internal static readonly global::System.Collections.Concurrent.ConcurrentDictionary<IntPtr, global::CppSharp.Parser.LinkerOptions> NativeToManagedMap = new global::System.Collections.Concurrent.ConcurrentDictionary<IntPtr, global::CppSharp.Parser.LinkerOptions>();
|
||||
internal static readonly global::System.Collections.Concurrent.ConcurrentDictionary<IntPtr, global::CppSharp.Parser.CppLinkerOptions> NativeToManagedMap = new global::System.Collections.Concurrent.ConcurrentDictionary<IntPtr, global::CppSharp.Parser.CppLinkerOptions>();
|
||||
|
||||
protected bool __ownsNativeInstance;
|
||||
|
||||
internal static LinkerOptions __CreateInstance(__IntPtr native, bool skipVTables = false)
|
||||
internal static CppLinkerOptions __CreateInstance(__IntPtr native, bool skipVTables = false)
|
||||
{
|
||||
return new LinkerOptions(native.ToPointer(), skipVTables);
|
||||
return new CppLinkerOptions(native.ToPointer(), skipVTables);
|
||||
}
|
||||
|
||||
internal static LinkerOptions __GetOrCreateInstance(__IntPtr native, bool saveInstance = false, bool skipVTables = false)
|
||||
internal static CppLinkerOptions __GetOrCreateInstance(__IntPtr native, bool saveInstance = false, bool skipVTables = false)
|
||||
{
|
||||
if (native == __IntPtr.Zero)
|
||||
return null;
|
||||
if (NativeToManagedMap.TryGetValue(native, out var managed))
|
||||
return (LinkerOptions)managed;
|
||||
return (CppLinkerOptions)managed;
|
||||
var result = __CreateInstance(native, skipVTables);
|
||||
if (saveInstance)
|
||||
NativeToManagedMap[native] = result;
|
||||
return result;
|
||||
}
|
||||
|
||||
internal static LinkerOptions __CreateInstance(__Internal native, bool skipVTables = false)
|
||||
internal static CppLinkerOptions __CreateInstance(__Internal native, bool skipVTables = false)
|
||||
{
|
||||
return new LinkerOptions(native, skipVTables);
|
||||
return new CppLinkerOptions(native, skipVTables);
|
||||
}
|
||||
|
||||
private static void* __CopyValue(__Internal native)
|
||||
{
|
||||
var ret = Marshal.AllocHGlobal(sizeof(__Internal));
|
||||
global::CppSharp.Parser.LinkerOptions.__Internal.cctor(ret, new __IntPtr(&native));
|
||||
global::CppSharp.Parser.CppLinkerOptions.__Internal.cctor(ret, new __IntPtr(&native));
|
||||
return ret.ToPointer();
|
||||
}
|
||||
|
||||
private LinkerOptions(__Internal native, bool skipVTables = false)
|
||||
private CppLinkerOptions(__Internal native, bool skipVTables = false)
|
||||
: this(__CopyValue(native), skipVTables)
|
||||
{
|
||||
__ownsNativeInstance = true;
|
||||
NativeToManagedMap[__Instance] = this;
|
||||
}
|
||||
|
||||
protected LinkerOptions(void* native, bool skipVTables = false)
|
||||
protected CppLinkerOptions(void* native, bool skipVTables = false)
|
||||
{
|
||||
if (native == null)
|
||||
return;
|
||||
__Instance = new __IntPtr(native);
|
||||
}
|
||||
|
||||
public LinkerOptions()
|
||||
public CppLinkerOptions()
|
||||
{
|
||||
__Instance = Marshal.AllocHGlobal(sizeof(global::CppSharp.Parser.LinkerOptions.__Internal));
|
||||
__Instance = Marshal.AllocHGlobal(sizeof(global::CppSharp.Parser.CppLinkerOptions.__Internal));
|
||||
__ownsNativeInstance = true;
|
||||
NativeToManagedMap[__Instance] = this;
|
||||
__Internal.ctor(__Instance);
|
||||
}
|
||||
|
||||
public LinkerOptions(global::CppSharp.Parser.LinkerOptions _0)
|
||||
public CppLinkerOptions(global::CppSharp.Parser.CppLinkerOptions _0)
|
||||
{
|
||||
__Instance = Marshal.AllocHGlobal(sizeof(global::CppSharp.Parser.LinkerOptions.__Internal));
|
||||
__Instance = Marshal.AllocHGlobal(sizeof(global::CppSharp.Parser.CppLinkerOptions.__Internal));
|
||||
__ownsNativeInstance = true;
|
||||
NativeToManagedMap[__Instance] = this;
|
||||
if (ReferenceEquals(_0, null))
|
||||
|
@ -40647,8 +40685,17 @@ namespace CppSharp
|
|||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser11ClangParser11ParseHeaderEPNS0_16CppParserOptionsE", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr ParseHeader(__IntPtr Opts);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser11ClangParser12ParseLibraryEPNS0_13LinkerOptionsE", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser11ClangParser12ParseLibraryEPNS0_16CppLinkerOptionsE", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr ParseLibrary(__IntPtr Opts);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser11ClangParser5BuildEPNS0_16CppParserOptionsEPKNS0_16CppLinkerOptionsERKSsb", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr Build(__IntPtr Opts, __IntPtr LinkerOptions, __IntPtr File, bool Last);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser11ClangParser7CompileEPNS0_16CppParserOptionsERKSs", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr Compile(__IntPtr Opts, __IntPtr File);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser", EntryPoint = "_ZN8CppSharp9CppParser11ClangParser4LinkEPNS0_16CppParserOptionsEPKNS0_16CppLinkerOptionsERKSsb", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr Link(__IntPtr Opts, __IntPtr LinkerOptions, __IntPtr File, bool Last);
|
||||
}
|
||||
|
||||
public __IntPtr __Instance { get; protected set; }
|
||||
|
@ -40741,13 +40788,51 @@ namespace CppSharp
|
|||
return __result0;
|
||||
}
|
||||
|
||||
public static global::CppSharp.Parser.ParserResult ParseLibrary(global::CppSharp.Parser.LinkerOptions Opts)
|
||||
public static global::CppSharp.Parser.ParserResult ParseLibrary(global::CppSharp.Parser.CppLinkerOptions Opts)
|
||||
{
|
||||
var __arg0 = Opts is null ? __IntPtr.Zero : Opts.__Instance;
|
||||
var __ret = __Internal.ParseLibrary(__arg0);
|
||||
var __result0 = global::CppSharp.Parser.ParserResult.__GetOrCreateInstance(__ret, false);
|
||||
return __result0;
|
||||
}
|
||||
|
||||
public static global::CppSharp.Parser.ParserResult Build(global::CppSharp.Parser.CppParserOptions Opts, global::CppSharp.Parser.CppLinkerOptions LinkerOptions, string File, bool Last)
|
||||
{
|
||||
var __arg0 = Opts is null ? __IntPtr.Zero : Opts.__Instance;
|
||||
var __arg1 = LinkerOptions is null ? __IntPtr.Zero : LinkerOptions.__Instance;
|
||||
var __basicString2 = new global::Std.BasicString<sbyte, global::Std.CharTraits<sbyte>, global::Std.Allocator<sbyte>>();
|
||||
global::Std.BasicStringExtensions.Assign(__basicString2, File);
|
||||
var __arg2 = __basicString2.__Instance;
|
||||
var __ret = __Internal.Build(__arg0, __arg1, __arg2, Last);
|
||||
__basicString2.Dispose();
|
||||
var __result0 = global::CppSharp.Parser.ParserResult.__GetOrCreateInstance(__ret, false);
|
||||
return __result0;
|
||||
}
|
||||
|
||||
public static global::CppSharp.Parser.ParserResult Compile(global::CppSharp.Parser.CppParserOptions Opts, string File)
|
||||
{
|
||||
var __arg0 = Opts is null ? __IntPtr.Zero : Opts.__Instance;
|
||||
var __basicString1 = new global::Std.BasicString<sbyte, global::Std.CharTraits<sbyte>, global::Std.Allocator<sbyte>>();
|
||||
global::Std.BasicStringExtensions.Assign(__basicString1, File);
|
||||
var __arg1 = __basicString1.__Instance;
|
||||
var __ret = __Internal.Compile(__arg0, __arg1);
|
||||
__basicString1.Dispose();
|
||||
var __result0 = global::CppSharp.Parser.ParserResult.__GetOrCreateInstance(__ret, false);
|
||||
return __result0;
|
||||
}
|
||||
|
||||
public static global::CppSharp.Parser.ParserResult Link(global::CppSharp.Parser.CppParserOptions Opts, global::CppSharp.Parser.CppLinkerOptions LinkerOptions, string File, bool Last)
|
||||
{
|
||||
var __arg0 = Opts is null ? __IntPtr.Zero : Opts.__Instance;
|
||||
var __arg1 = LinkerOptions is null ? __IntPtr.Zero : LinkerOptions.__Instance;
|
||||
var __basicString2 = new global::Std.BasicString<sbyte, global::Std.CharTraits<sbyte>, global::Std.Allocator<sbyte>>();
|
||||
global::Std.BasicStringExtensions.Assign(__basicString2, File);
|
||||
var __arg2 = __basicString2.__Instance;
|
||||
var __ret = __Internal.Link(__arg0, __arg1, __arg2, Last);
|
||||
__basicString2.Dispose();
|
||||
var __result0 = global::CppSharp.Parser.ParserResult.__GetOrCreateInstance(__ret, false);
|
||||
return __result0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -372,8 +372,8 @@ extern "C" __declspec(dllexport) void c__N_CppSharp_N_CppParser_S_ParserTargetIn
|
|||
struct CppSharp::CppParser::ParserTargetInfo& (CppSharp::CppParser::ParserTargetInfo::*_239)(const struct CppSharp::CppParser::ParserTargetInfo&) = &CppSharp::CppParser::ParserTargetInfo::operator=;
|
||||
extern "C" __declspec(dllexport) void c__N_CppSharp_N_CppParser_S_CppParserOptions_CppParserOptions___1__N_CppSharp_N_CppParser_S_CppParserOptions(void* __instance, const CppSharp::CppParser::CppParserOptions& _0) { ::new (__instance) CppSharp::CppParser::CppParserOptions(_0); }
|
||||
struct CppSharp::CppParser::CppParserOptions& (CppSharp::CppParser::CppParserOptions::*_240)(const struct CppSharp::CppParser::CppParserOptions&) = &CppSharp::CppParser::CppParserOptions::operator=;
|
||||
extern "C" __declspec(dllexport) void c__N_CppSharp_N_CppParser_S_LinkerOptions_LinkerOptions___1__N_CppSharp_N_CppParser_S_LinkerOptions(void* __instance, const CppSharp::CppParser::LinkerOptions& _0) { ::new (__instance) CppSharp::CppParser::LinkerOptions(_0); }
|
||||
struct CppSharp::CppParser::LinkerOptions& (CppSharp::CppParser::LinkerOptions::*_241)(const struct CppSharp::CppParser::LinkerOptions&) = &CppSharp::CppParser::LinkerOptions::operator=;
|
||||
extern "C" __declspec(dllexport) void c__N_CppSharp_N_CppParser_S_CppLinkerOptions_CppLinkerOptions___1__N_CppSharp_N_CppParser_S_CppLinkerOptions(void* __instance, const CppSharp::CppParser::CppLinkerOptions& _0) { ::new (__instance) CppSharp::CppParser::CppLinkerOptions(_0); }
|
||||
struct CppSharp::CppParser::CppLinkerOptions& (CppSharp::CppParser::CppLinkerOptions::*_241)(const struct CppSharp::CppParser::CppLinkerOptions&) = &CppSharp::CppParser::CppLinkerOptions::operator=;
|
||||
struct CppSharp::CppParser::ParserDiagnostic& (CppSharp::CppParser::ParserDiagnostic::*_242)(const struct CppSharp::CppParser::ParserDiagnostic&) = &CppSharp::CppParser::ParserDiagnostic::operator=;
|
||||
struct CppSharp::CppParser::ParserResult& (CppSharp::CppParser::ParserResult::*_243)(const struct CppSharp::CppParser::ParserResult&) = &CppSharp::CppParser::ParserResult::operator=;
|
||||
class CppSharp::CppParser::ClangParser& (CppSharp::CppParser::ClangParser::*_244)(class CppSharp::CppParser::ClangParser&&) = &CppSharp::CppParser::ClangParser::operator=;
|
||||
|
|
|
@ -39534,10 +39534,11 @@ namespace CppSharp
|
|||
|
||||
public unsafe partial class CppParserOptions : IDisposable
|
||||
{
|
||||
[StructLayout(LayoutKind.Sequential, Size = 256)]
|
||||
[StructLayout(LayoutKind.Sequential, Size = 280)]
|
||||
public partial struct __Internal
|
||||
{
|
||||
internal global::Std.Vector.__Internalc__N_std_S_vector____N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C___N_std_S_allocator__S0_ Arguments;
|
||||
internal global::Std.Vector.__Internalc__N_std_S_vector____N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C___N_std_S_allocator__S0_ CompilationOptions;
|
||||
internal global::Std.Vector.__Internalc__N_std_S_vector____N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C___N_std_S_allocator__S0_ SourceFiles;
|
||||
internal global::Std.Vector.__Internalc__N_std_S_vector____N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C___N_std_S_allocator__S0_ IncludeDirs;
|
||||
internal global::Std.Vector.__Internalc__N_std_S_vector____N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C___N_std_S_allocator__S0_ SystemIncludeDirs;
|
||||
|
@ -39575,6 +39576,15 @@ namespace CppSharp
|
|||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?clearArguments@CppParserOptions@CppParser@CppSharp@@QEAAXXZ", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void ClearArguments(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?getCompilationOptions@CppParserOptions@CppParser@CppSharp@@QEAAPEBDI@Z", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr GetCompilationOptions(__IntPtr __instance, uint i);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?addCompilationOptions@CppParserOptions@CppParser@CppSharp@@QEAAXPEBD@Z", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void AddCompilationOptions(__IntPtr __instance, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(CppSharp.Runtime.UTF8Marshaller))] string s);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?clearCompilationOptions@CppParserOptions@CppParser@CppSharp@@QEAAXXZ", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void ClearCompilationOptions(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?getSourceFiles@CppParserOptions@CppParser@CppSharp@@QEAAPEBDI@Z", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr GetSourceFiles(__IntPtr __instance, uint i);
|
||||
|
||||
|
@ -39635,6 +39645,9 @@ namespace CppSharp
|
|||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?getArgumentsCount@CppParserOptions@CppParser@CppSharp@@QEAAIXZ", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern uint GetArgumentsCount(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?getCompilationOptionsCount@CppParserOptions@CppParser@CppSharp@@QEAAIXZ", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern uint GetCompilationOptionsCount(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?getSourceFilesCount@CppParserOptions@CppParser@CppSharp@@QEAAIXZ", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern uint GetSourceFilesCount(__IntPtr __instance);
|
||||
|
||||
|
@ -39758,6 +39771,22 @@ namespace CppSharp
|
|||
__Internal.ClearArguments(__Instance);
|
||||
}
|
||||
|
||||
public string GetCompilationOptions(uint i)
|
||||
{
|
||||
var __ret = __Internal.GetCompilationOptions(__Instance, i);
|
||||
return CppSharp.Runtime.MarshalUtil.GetString(global::System.Text.Encoding.UTF8, __ret);
|
||||
}
|
||||
|
||||
public void AddCompilationOptions(string s)
|
||||
{
|
||||
__Internal.AddCompilationOptions(__Instance, s);
|
||||
}
|
||||
|
||||
public void ClearCompilationOptions()
|
||||
{
|
||||
__Internal.ClearCompilationOptions(__Instance);
|
||||
}
|
||||
|
||||
public string GetSourceFiles(uint i)
|
||||
{
|
||||
var __ret = __Internal.GetSourceFiles(__Instance, i);
|
||||
|
@ -40021,6 +40050,15 @@ namespace CppSharp
|
|||
}
|
||||
}
|
||||
|
||||
public uint CompilationOptionsCount
|
||||
{
|
||||
get
|
||||
{
|
||||
var __ret = __Internal.GetCompilationOptionsCount(__Instance);
|
||||
return __ret;
|
||||
}
|
||||
}
|
||||
|
||||
public uint SourceFilesCount
|
||||
{
|
||||
get
|
||||
|
@ -40076,7 +40114,7 @@ namespace CppSharp
|
|||
}
|
||||
}
|
||||
|
||||
public unsafe partial class LinkerOptions : IDisposable
|
||||
public unsafe partial class CppLinkerOptions : IDisposable
|
||||
{
|
||||
[StructLayout(LayoutKind.Sequential, Size = 72)]
|
||||
public partial struct __Internal
|
||||
|
@ -40085,112 +40123,112 @@ namespace CppSharp
|
|||
internal global::Std.Vector.__Internalc__N_std_S_vector____N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C___N_std_S_allocator__S0_ LibraryDirs;
|
||||
internal global::Std.Vector.__Internalc__N_std_S_vector____N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C___N_std_S_allocator__S0_ Libraries;
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "??0LinkerOptions@CppParser@CppSharp@@QEAA@XZ", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "??0CppLinkerOptions@CppParser@CppSharp@@QEAA@XZ", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr ctor(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "??0LinkerOptions@CppParser@CppSharp@@QEAA@AEBU012@@Z", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "??0CppLinkerOptions@CppParser@CppSharp@@QEAA@AEBU012@@Z", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr cctor(__IntPtr __instance, __IntPtr _0);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "??1LinkerOptions@CppParser@CppSharp@@QEAA@XZ", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "??1CppLinkerOptions@CppParser@CppSharp@@QEAA@XZ", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void dtor(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?getArguments@LinkerOptions@CppParser@CppSharp@@QEAAPEBDI@Z", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?getArguments@CppLinkerOptions@CppParser@CppSharp@@QEAAPEBDI@Z", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr GetArguments(__IntPtr __instance, uint i);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?addArguments@LinkerOptions@CppParser@CppSharp@@QEAAXPEBD@Z", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?addArguments@CppLinkerOptions@CppParser@CppSharp@@QEAAXPEBD@Z", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void AddArguments(__IntPtr __instance, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(CppSharp.Runtime.UTF8Marshaller))] string s);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?clearArguments@LinkerOptions@CppParser@CppSharp@@QEAAXXZ", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?clearArguments@CppLinkerOptions@CppParser@CppSharp@@QEAAXXZ", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void ClearArguments(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?getLibraryDirs@LinkerOptions@CppParser@CppSharp@@QEAAPEBDI@Z", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?getLibraryDirs@CppLinkerOptions@CppParser@CppSharp@@QEAAPEBDI@Z", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr GetLibraryDirs(__IntPtr __instance, uint i);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?addLibraryDirs@LinkerOptions@CppParser@CppSharp@@QEAAXPEBD@Z", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?addLibraryDirs@CppLinkerOptions@CppParser@CppSharp@@QEAAXPEBD@Z", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void AddLibraryDirs(__IntPtr __instance, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(CppSharp.Runtime.UTF8Marshaller))] string s);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?clearLibraryDirs@LinkerOptions@CppParser@CppSharp@@QEAAXXZ", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?clearLibraryDirs@CppLinkerOptions@CppParser@CppSharp@@QEAAXXZ", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void ClearLibraryDirs(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?getLibraries@LinkerOptions@CppParser@CppSharp@@QEAAPEBDI@Z", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?getLibraries@CppLinkerOptions@CppParser@CppSharp@@QEAAPEBDI@Z", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr GetLibraries(__IntPtr __instance, uint i);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?addLibraries@LinkerOptions@CppParser@CppSharp@@QEAAXPEBD@Z", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?addLibraries@CppLinkerOptions@CppParser@CppSharp@@QEAAXPEBD@Z", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void AddLibraries(__IntPtr __instance, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(CppSharp.Runtime.UTF8Marshaller))] string s);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?clearLibraries@LinkerOptions@CppParser@CppSharp@@QEAAXXZ", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?clearLibraries@CppLinkerOptions@CppParser@CppSharp@@QEAAXXZ", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern void ClearLibraries(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?getArgumentsCount@LinkerOptions@CppParser@CppSharp@@QEAAIXZ", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?getArgumentsCount@CppLinkerOptions@CppParser@CppSharp@@QEAAIXZ", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern uint GetArgumentsCount(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?getLibraryDirsCount@LinkerOptions@CppParser@CppSharp@@QEAAIXZ", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?getLibraryDirsCount@CppLinkerOptions@CppParser@CppSharp@@QEAAIXZ", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern uint GetLibraryDirsCount(__IntPtr __instance);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?getLibrariesCount@LinkerOptions@CppParser@CppSharp@@QEAAIXZ", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?getLibrariesCount@CppLinkerOptions@CppParser@CppSharp@@QEAAIXZ", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern uint GetLibrariesCount(__IntPtr __instance);
|
||||
}
|
||||
|
||||
public __IntPtr __Instance { get; protected set; }
|
||||
|
||||
internal static readonly global::System.Collections.Concurrent.ConcurrentDictionary<IntPtr, global::CppSharp.Parser.LinkerOptions> NativeToManagedMap = new global::System.Collections.Concurrent.ConcurrentDictionary<IntPtr, global::CppSharp.Parser.LinkerOptions>();
|
||||
internal static readonly global::System.Collections.Concurrent.ConcurrentDictionary<IntPtr, global::CppSharp.Parser.CppLinkerOptions> NativeToManagedMap = new global::System.Collections.Concurrent.ConcurrentDictionary<IntPtr, global::CppSharp.Parser.CppLinkerOptions>();
|
||||
|
||||
protected bool __ownsNativeInstance;
|
||||
|
||||
internal static LinkerOptions __CreateInstance(__IntPtr native, bool skipVTables = false)
|
||||
internal static CppLinkerOptions __CreateInstance(__IntPtr native, bool skipVTables = false)
|
||||
{
|
||||
return new LinkerOptions(native.ToPointer(), skipVTables);
|
||||
return new CppLinkerOptions(native.ToPointer(), skipVTables);
|
||||
}
|
||||
|
||||
internal static LinkerOptions __GetOrCreateInstance(__IntPtr native, bool saveInstance = false, bool skipVTables = false)
|
||||
internal static CppLinkerOptions __GetOrCreateInstance(__IntPtr native, bool saveInstance = false, bool skipVTables = false)
|
||||
{
|
||||
if (native == __IntPtr.Zero)
|
||||
return null;
|
||||
if (NativeToManagedMap.TryGetValue(native, out var managed))
|
||||
return (LinkerOptions)managed;
|
||||
return (CppLinkerOptions)managed;
|
||||
var result = __CreateInstance(native, skipVTables);
|
||||
if (saveInstance)
|
||||
NativeToManagedMap[native] = result;
|
||||
return result;
|
||||
}
|
||||
|
||||
internal static LinkerOptions __CreateInstance(__Internal native, bool skipVTables = false)
|
||||
internal static CppLinkerOptions __CreateInstance(__Internal native, bool skipVTables = false)
|
||||
{
|
||||
return new LinkerOptions(native, skipVTables);
|
||||
return new CppLinkerOptions(native, skipVTables);
|
||||
}
|
||||
|
||||
private static void* __CopyValue(__Internal native)
|
||||
{
|
||||
var ret = Marshal.AllocHGlobal(sizeof(__Internal));
|
||||
global::CppSharp.Parser.LinkerOptions.__Internal.cctor(ret, new __IntPtr(&native));
|
||||
global::CppSharp.Parser.CppLinkerOptions.__Internal.cctor(ret, new __IntPtr(&native));
|
||||
return ret.ToPointer();
|
||||
}
|
||||
|
||||
private LinkerOptions(__Internal native, bool skipVTables = false)
|
||||
private CppLinkerOptions(__Internal native, bool skipVTables = false)
|
||||
: this(__CopyValue(native), skipVTables)
|
||||
{
|
||||
__ownsNativeInstance = true;
|
||||
NativeToManagedMap[__Instance] = this;
|
||||
}
|
||||
|
||||
protected LinkerOptions(void* native, bool skipVTables = false)
|
||||
protected CppLinkerOptions(void* native, bool skipVTables = false)
|
||||
{
|
||||
if (native == null)
|
||||
return;
|
||||
__Instance = new __IntPtr(native);
|
||||
}
|
||||
|
||||
public LinkerOptions()
|
||||
public CppLinkerOptions()
|
||||
{
|
||||
__Instance = Marshal.AllocHGlobal(sizeof(global::CppSharp.Parser.LinkerOptions.__Internal));
|
||||
__Instance = Marshal.AllocHGlobal(sizeof(global::CppSharp.Parser.CppLinkerOptions.__Internal));
|
||||
__ownsNativeInstance = true;
|
||||
NativeToManagedMap[__Instance] = this;
|
||||
__Internal.ctor(__Instance);
|
||||
}
|
||||
|
||||
public LinkerOptions(global::CppSharp.Parser.LinkerOptions _0)
|
||||
public CppLinkerOptions(global::CppSharp.Parser.CppLinkerOptions _0)
|
||||
{
|
||||
__Instance = Marshal.AllocHGlobal(sizeof(global::CppSharp.Parser.LinkerOptions.__Internal));
|
||||
__Instance = Marshal.AllocHGlobal(sizeof(global::CppSharp.Parser.CppLinkerOptions.__Internal));
|
||||
__ownsNativeInstance = true;
|
||||
NativeToManagedMap[__Instance] = this;
|
||||
if (ReferenceEquals(_0, null))
|
||||
|
@ -40704,8 +40742,17 @@ namespace CppSharp
|
|||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?ParseHeader@ClangParser@CppParser@CppSharp@@SAPEAUParserResult@23@PEAUCppParserOptions@23@@Z", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr ParseHeader(__IntPtr Opts);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?ParseLibrary@ClangParser@CppParser@CppSharp@@SAPEAUParserResult@23@PEAULinkerOptions@23@@Z", CallingConvention = __CallingConvention.Cdecl)]
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?ParseLibrary@ClangParser@CppParser@CppSharp@@SAPEAUParserResult@23@PEAUCppLinkerOptions@23@@Z", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr ParseLibrary(__IntPtr Opts);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?Build@ClangParser@CppParser@CppSharp@@SAPEAUParserResult@23@PEAUCppParserOptions@23@PEBUCppLinkerOptions@23@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@_N@Z", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr Build(__IntPtr Opts, __IntPtr LinkerOptions, __IntPtr File, bool Last);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?Compile@ClangParser@CppParser@CppSharp@@SAPEAUParserResult@23@PEAUCppParserOptions@23@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr Compile(__IntPtr Opts, __IntPtr File);
|
||||
|
||||
[SuppressUnmanagedCodeSecurity, DllImport("CppSharp.CppParser.dll", EntryPoint = "?Link@ClangParser@CppParser@CppSharp@@SAPEAUParserResult@23@PEAUCppParserOptions@23@PEBUCppLinkerOptions@23@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@_N@Z", CallingConvention = __CallingConvention.Cdecl)]
|
||||
internal static extern __IntPtr Link(__IntPtr Opts, __IntPtr LinkerOptions, __IntPtr File, bool Last);
|
||||
}
|
||||
|
||||
public __IntPtr __Instance { get; protected set; }
|
||||
|
@ -40798,13 +40845,51 @@ namespace CppSharp
|
|||
return __result0;
|
||||
}
|
||||
|
||||
public static global::CppSharp.Parser.ParserResult ParseLibrary(global::CppSharp.Parser.LinkerOptions Opts)
|
||||
public static global::CppSharp.Parser.ParserResult ParseLibrary(global::CppSharp.Parser.CppLinkerOptions Opts)
|
||||
{
|
||||
var __arg0 = Opts is null ? __IntPtr.Zero : Opts.__Instance;
|
||||
var __ret = __Internal.ParseLibrary(__arg0);
|
||||
var __result0 = global::CppSharp.Parser.ParserResult.__GetOrCreateInstance(__ret, false);
|
||||
return __result0;
|
||||
}
|
||||
|
||||
public static global::CppSharp.Parser.ParserResult Build(global::CppSharp.Parser.CppParserOptions Opts, global::CppSharp.Parser.CppLinkerOptions LinkerOptions, string File, bool Last)
|
||||
{
|
||||
var __arg0 = Opts is null ? __IntPtr.Zero : Opts.__Instance;
|
||||
var __arg1 = LinkerOptions is null ? __IntPtr.Zero : LinkerOptions.__Instance;
|
||||
var __basicString2 = new global::Std.BasicString<sbyte, global::Std.CharTraits<sbyte>, global::Std.Allocator<sbyte>>();
|
||||
global::Std.BasicStringExtensions.Assign(__basicString2, File);
|
||||
var __arg2 = __basicString2.__Instance;
|
||||
var __ret = __Internal.Build(__arg0, __arg1, __arg2, Last);
|
||||
__basicString2.Dispose();
|
||||
var __result0 = global::CppSharp.Parser.ParserResult.__GetOrCreateInstance(__ret, false);
|
||||
return __result0;
|
||||
}
|
||||
|
||||
public static global::CppSharp.Parser.ParserResult Compile(global::CppSharp.Parser.CppParserOptions Opts, string File)
|
||||
{
|
||||
var __arg0 = Opts is null ? __IntPtr.Zero : Opts.__Instance;
|
||||
var __basicString1 = new global::Std.BasicString<sbyte, global::Std.CharTraits<sbyte>, global::Std.Allocator<sbyte>>();
|
||||
global::Std.BasicStringExtensions.Assign(__basicString1, File);
|
||||
var __arg1 = __basicString1.__Instance;
|
||||
var __ret = __Internal.Compile(__arg0, __arg1);
|
||||
__basicString1.Dispose();
|
||||
var __result0 = global::CppSharp.Parser.ParserResult.__GetOrCreateInstance(__ret, false);
|
||||
return __result0;
|
||||
}
|
||||
|
||||
public static global::CppSharp.Parser.ParserResult Link(global::CppSharp.Parser.CppParserOptions Opts, global::CppSharp.Parser.CppLinkerOptions LinkerOptions, string File, bool Last)
|
||||
{
|
||||
var __arg0 = Opts is null ? __IntPtr.Zero : Opts.__Instance;
|
||||
var __arg1 = LinkerOptions is null ? __IntPtr.Zero : LinkerOptions.__Instance;
|
||||
var __basicString2 = new global::Std.BasicString<sbyte, global::Std.CharTraits<sbyte>, global::Std.Allocator<sbyte>>();
|
||||
global::Std.BasicStringExtensions.Assign(__basicString2, File);
|
||||
var __arg2 = __basicString2.__Instance;
|
||||
var __ret = __Internal.Link(__arg0, __arg1, __arg2, Last);
|
||||
__basicString2.Dispose();
|
||||
var __result0 = global::CppSharp.Parser.ParserResult.__GetOrCreateInstance(__ret, false);
|
||||
return __result0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -7,6 +7,7 @@
|
|||
|
||||
#include "CppParser.h"
|
||||
#include "Parser.h"
|
||||
#include <llvm/Support/Host.h>
|
||||
#include <clang/Basic/Version.inc>
|
||||
|
||||
namespace CppSharp { namespace CppParser {
|
||||
|
@ -31,6 +32,7 @@ CppParserOptions::~CppParserOptions() {}
|
|||
std::string CppParserOptions::getClangVersion() { return clangVersion; }
|
||||
|
||||
DEF_VECTOR_STRING(CppParserOptions, Arguments)
|
||||
DEF_VECTOR_STRING(CppParserOptions, CompilationOptions)
|
||||
DEF_VECTOR_STRING(CppParserOptions, SourceFiles)
|
||||
DEF_VECTOR_STRING(CppParserOptions, IncludeDirs)
|
||||
DEF_VECTOR_STRING(CppParserOptions, SystemIncludeDirs)
|
||||
|
@ -61,12 +63,15 @@ ParserResult::~ParserResult()
|
|||
DEF_VECTOR(ParserResult, ParserDiagnostic, Diagnostics)
|
||||
DEF_VECTOR(ParserResult, NativeLibrary*, Libraries)
|
||||
|
||||
LinkerOptions::LinkerOptions() {}
|
||||
LinkerOptions::~LinkerOptions() {}
|
||||
CppLinkerOptions::CppLinkerOptions()
|
||||
{
|
||||
}
|
||||
|
||||
DEF_VECTOR_STRING(LinkerOptions, Arguments)
|
||||
DEF_VECTOR_STRING(LinkerOptions, LibraryDirs)
|
||||
DEF_VECTOR_STRING(LinkerOptions, Libraries)
|
||||
CppLinkerOptions::~CppLinkerOptions() {}
|
||||
|
||||
DEF_VECTOR_STRING(CppLinkerOptions, Arguments)
|
||||
DEF_VECTOR_STRING(CppLinkerOptions, LibraryDirs)
|
||||
DEF_VECTOR_STRING(CppLinkerOptions, Libraries)
|
||||
|
||||
ParserDiagnostic::ParserDiagnostic() {}
|
||||
|
||||
|
|
|
@ -26,6 +26,7 @@ struct CS_API CppParserOptions
|
|||
std::string getClangVersion();
|
||||
|
||||
VECTOR_STRING(Arguments)
|
||||
VECTOR_STRING(CompilationOptions)
|
||||
// C/C++ header file names.
|
||||
VECTOR_STRING(SourceFiles)
|
||||
|
||||
|
@ -54,10 +55,10 @@ private:
|
|||
std::string clangVersion;
|
||||
};
|
||||
|
||||
struct CS_API LinkerOptions
|
||||
struct CS_API CppLinkerOptions
|
||||
{
|
||||
LinkerOptions();
|
||||
~LinkerOptions();
|
||||
CppLinkerOptions();
|
||||
~CppLinkerOptions();
|
||||
|
||||
VECTOR_STRING(Arguments)
|
||||
VECTOR_STRING(LibraryDirs)
|
||||
|
@ -120,7 +121,12 @@ class CS_API ClangParser
|
|||
public:
|
||||
|
||||
static ParserResult* ParseHeader(CppParserOptions* Opts);
|
||||
static ParserResult* ParseLibrary(LinkerOptions* Opts);
|
||||
static ParserResult* ParseLibrary(CppLinkerOptions* Opts);
|
||||
static ParserResult* Build(CppParserOptions* Opts,
|
||||
const CppLinkerOptions* LinkerOptions, const std::string& File, bool Last);
|
||||
static ParserResult* Compile(CppParserOptions* Opts, const std::string& File);
|
||||
static ParserResult* Link(CppParserOptions* Opts,
|
||||
const CppLinkerOptions* LinkerOptions, const std::string& File, bool Last);
|
||||
};
|
||||
|
||||
} }
|
|
@ -0,0 +1,187 @@
|
|||
/************************************************************************
|
||||
*
|
||||
* CppSharp
|
||||
* Licensed under the simplified BSD license. All rights reserved.
|
||||
*
|
||||
************************************************************************/
|
||||
|
||||
#include "CppParser.h"
|
||||
#include "Parser.h"
|
||||
#include <Driver/ToolChains/MSVC.h>
|
||||
#include <Driver/ToolChains/Linux.h>
|
||||
#include <lld/Common/Driver.h>
|
||||
|
||||
using namespace CppSharp::CppParser;
|
||||
|
||||
void Parser::Link(const std::string& File, const CppLinkerOptions* LinkerOptions)
|
||||
{
|
||||
std::vector<const char*> args;
|
||||
llvm::StringRef Dir(llvm::sys::path::parent_path(File));
|
||||
llvm::StringRef Stem = llvm::sys::path::stem(File);
|
||||
|
||||
const llvm::Triple Triple = c->getTarget().getTriple();
|
||||
switch (Triple.getOS())
|
||||
{
|
||||
case llvm::Triple::OSType::Win32:
|
||||
args.push_back("-subsystem:windows");
|
||||
switch (Triple.getEnvironment())
|
||||
{
|
||||
case llvm::Triple::EnvironmentType::MSVC:
|
||||
LinkWindows(LinkerOptions, args, Dir, Stem);
|
||||
break;
|
||||
|
||||
case llvm::Triple::EnvironmentType::GNU:
|
||||
LinkWindows(LinkerOptions, args, Dir, Stem, true);
|
||||
break;
|
||||
|
||||
default:
|
||||
throw std::invalid_argument("Target triple environment");
|
||||
}
|
||||
break;
|
||||
|
||||
case llvm::Triple::OSType::Linux:
|
||||
LinkELF(LinkerOptions, args, Dir, Stem);
|
||||
break;
|
||||
|
||||
case llvm::Triple::OSType::Darwin:
|
||||
case llvm::Triple::OSType::MacOSX:
|
||||
LinkMachO(LinkerOptions, args, Dir, Stem);
|
||||
break;
|
||||
|
||||
default:
|
||||
throw std::invalid_argument("Target triple operating system");
|
||||
}
|
||||
}
|
||||
|
||||
void Parser::LinkWindows(const CppLinkerOptions* LinkerOptions,
|
||||
std::vector<const char*>& args,
|
||||
const llvm::StringRef& Dir, llvm::StringRef& Stem, bool MinGW)
|
||||
{
|
||||
#ifdef _WIN32
|
||||
using namespace llvm;
|
||||
using namespace clang;
|
||||
|
||||
if (MinGW)
|
||||
{
|
||||
args.push_back("-lldmingw");
|
||||
}
|
||||
|
||||
const Triple& Triple = c->getTarget().getTriple();
|
||||
driver::Driver D("", Triple.str(), c->getDiagnostics());
|
||||
opt::InputArgList Args(0, 0);
|
||||
driver::toolchains::MSVCToolChain TC(D, Triple, Args);
|
||||
|
||||
std::vector<std::string> LibraryPaths;
|
||||
LibraryPaths.push_back("-libpath:" + TC.getSubDirectoryPath(
|
||||
clang::driver::toolchains::MSVCToolChain::SubDirectoryType::Lib));
|
||||
std::string CRTPath;
|
||||
if (TC.getUniversalCRTLibraryPath(Args, CRTPath))
|
||||
LibraryPaths.push_back("-libpath:" + CRTPath);
|
||||
std::string WinSDKPath;
|
||||
if (TC.getWindowsSDKLibraryPath(Args, WinSDKPath))
|
||||
LibraryPaths.push_back("-libpath:" + WinSDKPath);
|
||||
for (const auto& LibraryDir : LinkerOptions->LibraryDirs)
|
||||
LibraryPaths.push_back("-libpath:" + LibraryDir);
|
||||
for (const auto& LibraryPath : LibraryPaths)
|
||||
args.push_back(LibraryPath.data());
|
||||
|
||||
for (const std::string& Arg : LinkerOptions->Arguments)
|
||||
{
|
||||
args.push_back(Arg.data());
|
||||
}
|
||||
|
||||
std::string LibExtension(MinGW ? "" : ".lib");
|
||||
|
||||
std::vector<std::string> Libraries;
|
||||
for (const auto& Library : LinkerOptions->Libraries)
|
||||
Libraries.push_back(Library + LibExtension);
|
||||
for (const auto& Library : Libraries)
|
||||
args.push_back(Library.data());
|
||||
|
||||
args.push_back(c->getFrontendOpts().OutputFile.data());
|
||||
SmallString<1024> Output(Dir);
|
||||
sys::path::append(Output, Stem + ".dll");
|
||||
std::string Out("-out:" + std::string(Output));
|
||||
args.push_back(Out.data());
|
||||
|
||||
lld::coff::link(args, false, outs(), errs());
|
||||
#endif
|
||||
}
|
||||
|
||||
void Parser::LinkELF(const CppLinkerOptions* LinkerOptions,
|
||||
std::vector<const char*>& args,
|
||||
llvm::StringRef& Dir, llvm::StringRef& Stem)
|
||||
{
|
||||
#ifdef __linux__
|
||||
using namespace llvm;
|
||||
|
||||
args.push_back("-flavor gnu");
|
||||
for (const std::string& Arg : LinkerOptions->Arguments)
|
||||
{
|
||||
args.push_back(Arg.data());
|
||||
}
|
||||
|
||||
std::string LinkingDir("-L" + Dir.str());
|
||||
args.push_back(LinkingDir.data());
|
||||
std::vector<std::string> LibraryDirs;
|
||||
for (const auto& LibraryDir : LinkerOptions->LibraryDirs)
|
||||
LibraryDirs.push_back("-L" + LibraryDir);
|
||||
for (const auto& LibraryDir : LibraryDirs)
|
||||
args.push_back(LibraryDir.data());
|
||||
|
||||
std::vector<std::string> Libraries;
|
||||
for (const auto& Library : LinkerOptions->Libraries)
|
||||
Libraries.push_back("-l" + Library);
|
||||
for (const auto& Library : Libraries)
|
||||
args.push_back(Library.data());
|
||||
|
||||
args.push_back(c->getFrontendOpts().OutputFile.data());
|
||||
|
||||
args.push_back("-o");
|
||||
SmallString<1024> Output(Dir);
|
||||
sys::path::append(Output, "lib" + Stem + ".so");
|
||||
std::string Out(Output);
|
||||
args.push_back(Out.data());
|
||||
|
||||
lld::elf::link(args, false, outs(), errs());
|
||||
#endif
|
||||
}
|
||||
|
||||
void Parser::LinkMachO(const CppLinkerOptions* LinkerOptions,
|
||||
std::vector<const char*>& args,
|
||||
llvm::StringRef& Dir, llvm::StringRef& Stem)
|
||||
{
|
||||
#ifdef __APPLE__
|
||||
using namespace llvm;
|
||||
|
||||
args.push_back("-flavor darwinnew");
|
||||
for (const std::string& Arg : LinkerOptions->Arguments)
|
||||
{
|
||||
args.push_back(Arg.data());
|
||||
}
|
||||
|
||||
std::string LinkingDir("-L" + Dir.str());
|
||||
args.push_back(LinkingDir.data());
|
||||
std::vector<std::string> LibraryDirs;
|
||||
for (const auto& LibraryDir : LinkerOptions->LibraryDirs)
|
||||
LibraryDirs.push_back("-L" + LibraryDir);
|
||||
for (const auto& LibraryDir : LibraryDirs)
|
||||
args.push_back(LibraryDir.data());
|
||||
|
||||
std::vector<std::string> Libraries;
|
||||
for (const auto& Library : LinkerOptions->Libraries)
|
||||
Libraries.push_back("-l" + Library);
|
||||
for (const auto& Library : Libraries)
|
||||
args.push_back(Library.data());
|
||||
|
||||
args.push_back(c->getFrontendOpts().OutputFile.data());
|
||||
|
||||
args.push_back("-o");
|
||||
SmallString<1024> Output(Dir);
|
||||
sys::path::append(Output, "lib" + Stem + ".dylib");
|
||||
std::string Out(Output);
|
||||
args.push_back(Out.data());
|
||||
|
||||
lld::mach_o::link(args, false, outs(), errs());
|
||||
#endif
|
||||
}
|
|
@ -33,6 +33,7 @@
|
|||
#include <clang/AST/Comment.h>
|
||||
#include <clang/AST/DeclFriend.h>
|
||||
#include <clang/AST/ExprCXX.h>
|
||||
#include <clang/CodeGen/CodeGenAction.h>
|
||||
#include <clang/Lex/DirectoryLookup.h>
|
||||
#include <clang/Lex/HeaderSearch.h>
|
||||
#include <clang/Lex/Preprocessor.h>
|
||||
|
@ -235,7 +236,7 @@ ConvertToClangTargetCXXABI(CppSharp::CppParser::AST::CppAbi abi)
|
|||
llvm_unreachable("Unsupported C++ ABI.");
|
||||
}
|
||||
|
||||
void Parser::Setup()
|
||||
void Parser::Setup(bool Compile)
|
||||
{
|
||||
llvm::InitializeAllTargets();
|
||||
llvm::InitializeAllTargetMCs();
|
||||
|
@ -245,6 +246,16 @@ void Parser::Setup()
|
|||
|
||||
std::vector<const char*> args;
|
||||
args.push_back("-cc1");
|
||||
if (Compile)
|
||||
{
|
||||
for (const std::string& CompilationOption : opts->CompilationOptions)
|
||||
{
|
||||
args.push_back(CompilationOption.c_str());
|
||||
|
||||
if (opts->verbose)
|
||||
printf("Compiler argument: %s\n", CompilationOption.c_str());
|
||||
}
|
||||
}
|
||||
|
||||
for (unsigned I = 0, E = opts->Arguments.size(); I != E; ++I)
|
||||
{
|
||||
|
@ -4577,7 +4588,7 @@ ParserResultKind Parser::ReadSymbols(llvm::StringRef File,
|
|||
return ParserResultKind::Success;
|
||||
}
|
||||
|
||||
ParserResult* Parser::ParseLibrary(const LinkerOptions* Opts)
|
||||
ParserResult* Parser::ParseLibrary(const CppLinkerOptions* Opts)
|
||||
{
|
||||
auto res = new ParserResult();
|
||||
|
||||
|
@ -4651,6 +4662,22 @@ ParserResult* Parser::ParseLibrary(const LinkerOptions* Opts)
|
|||
return res;
|
||||
}
|
||||
|
||||
ParserResult* Parser::Build(const CppLinkerOptions* LinkerOptions, const std::string& File, bool Last)
|
||||
{
|
||||
ParserResult* error = Compile(File);
|
||||
if (error)
|
||||
return error;
|
||||
|
||||
Link(File, LinkerOptions);
|
||||
|
||||
if (Last)
|
||||
llvm::llvm_shutdown();
|
||||
|
||||
auto res = new ParserResult();
|
||||
HandleDiagnostics(res);
|
||||
return res;
|
||||
}
|
||||
|
||||
ParserResult* ClangParser::ParseHeader(CppParserOptions* Opts)
|
||||
{
|
||||
if (!Opts)
|
||||
|
@ -4682,7 +4709,7 @@ ParserResult* ClangParser::ParseHeader(CppParserOptions* Opts)
|
|||
return res;
|
||||
}
|
||||
|
||||
ParserResult* ClangParser::ParseLibrary(LinkerOptions* Opts)
|
||||
ParserResult* ClangParser::ParseLibrary(CppLinkerOptions* Opts)
|
||||
{
|
||||
if (!Opts)
|
||||
return nullptr;
|
||||
|
@ -4690,6 +4717,68 @@ ParserResult* ClangParser::ParseLibrary(LinkerOptions* Opts)
|
|||
return Parser::ParseLibrary(Opts);
|
||||
}
|
||||
|
||||
ParserResult* ClangParser::Build(CppParserOptions* Opts,
|
||||
const CppLinkerOptions* LinkerOptions, const std::string& File, bool Last)
|
||||
{
|
||||
if (!Opts)
|
||||
return 0;
|
||||
|
||||
Parser Parser(Opts);
|
||||
return Parser.Build(LinkerOptions, File, Last);
|
||||
}
|
||||
|
||||
ParserResult* ClangParser::Compile(CppParserOptions* Opts,
|
||||
const std::string& File)
|
||||
{
|
||||
if (!Opts)
|
||||
return 0;
|
||||
|
||||
Parser Parser(Opts);
|
||||
return Parser.Compile(File);
|
||||
}
|
||||
|
||||
ParserResult* ClangParser::Link(CppParserOptions* Opts,
|
||||
const CppLinkerOptions* LinkerOptions, const std::string& File, bool Last)
|
||||
{
|
||||
if (!Opts)
|
||||
return 0;
|
||||
|
||||
Parser Parser(Opts);
|
||||
Parser.Link(File, LinkerOptions);
|
||||
|
||||
if (Last)
|
||||
llvm::llvm_shutdown();
|
||||
}
|
||||
|
||||
ParserResult* Parser::Compile(const std::string& File)
|
||||
{
|
||||
llvm::InitializeAllAsmPrinters();
|
||||
llvm::StringRef Stem = llvm::sys::path::stem(File);
|
||||
Setup(/* Compile */ true);
|
||||
|
||||
c->getDiagnostics().setClient(new ::DiagnosticConsumer());
|
||||
|
||||
c->getFrontendOpts().Inputs.clear();
|
||||
c->getFrontendOpts().Inputs.push_back(clang::FrontendInputFile(File, clang::Language::CXX));
|
||||
|
||||
const llvm::Triple Triple = c->getTarget().getTriple();
|
||||
llvm::StringRef Dir(llvm::sys::path::parent_path(File));
|
||||
llvm::SmallString<1024> Object(Dir);
|
||||
llvm::sys::path::append(Object,
|
||||
(Triple.isOSWindows() ? "" : "lib") + Stem + ".o");
|
||||
c->getFrontendOpts().OutputFile = std::string(Object);
|
||||
|
||||
llvm::LLVMContext context;
|
||||
auto action = std::make_unique<clang::EmitObjAction>(&context);
|
||||
if (!c->ExecuteAction(*action))
|
||||
{
|
||||
auto res = new ParserResult();
|
||||
HandleDiagnostics(res);
|
||||
return res;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
ParserTargetInfo* Parser::GetTargetInfo()
|
||||
{
|
||||
auto parserTargetInfo = new ParserTargetInfo();
|
||||
|
|
|
@ -53,10 +53,12 @@ class Parser
|
|||
public:
|
||||
Parser(CppParserOptions* Opts);
|
||||
|
||||
void Setup();
|
||||
void Setup(bool Compile = false);
|
||||
ParserResult* Parse(const std::vector<std::string>& SourceFiles);
|
||||
static ParserResult* ParseLibrary(const LinkerOptions* Opts);
|
||||
|
||||
static ParserResult* ParseLibrary(const CppLinkerOptions* Opts);
|
||||
ParserResult* Build(const CppLinkerOptions* LinkerOptions, const std::string& File, bool Last);
|
||||
ParserResult* Compile(const std::string& File);
|
||||
void Link(const std::string& File, const CppLinkerOptions* LinkerOptions);
|
||||
void WalkAST(clang::TranslationUnitDecl* TU);
|
||||
void HandleDeclaration(const clang::Decl* D, Declaration* Decl);
|
||||
CppParserOptions* opts;
|
||||
|
@ -169,6 +171,13 @@ private:
|
|||
llvm::object::ObjectFile* ObjectFile, std::vector<CppSharp::CppParser::NativeLibrary*>& NativeLibs);
|
||||
ParserTargetInfo* GetTargetInfo();
|
||||
|
||||
void LinkWindows(const CppLinkerOptions* LinkerOptions, std::vector<const char*>& args,
|
||||
const llvm::StringRef& Dir, llvm::StringRef& Stem, bool MinGW = false);
|
||||
void LinkELF(const CppLinkerOptions* LinkerOptions, std::vector<const char*>& args,
|
||||
llvm::StringRef& Dir, llvm::StringRef& Stem);
|
||||
void LinkMachO(const CppLinkerOptions* LinkerOptions, std::vector<const char*>& args,
|
||||
llvm::StringRef& Dir, llvm::StringRef& Stem);
|
||||
|
||||
int index;
|
||||
std::unique_ptr<clang::CompilerInstance> c;
|
||||
llvm::LLVMContext LLVMCtx;
|
||||
|
|
|
@ -2,7 +2,6 @@ using System;
|
|||
using System.Linq;
|
||||
using CppSharp.AST;
|
||||
using CppSharp.AST.Extensions;
|
||||
using CppSharp.Generators;
|
||||
using CppSharp.Generators.C;
|
||||
using CppSharp.Generators.CSharp;
|
||||
using CppSharp.Passes;
|
||||
|
@ -13,26 +12,8 @@ namespace CppSharp.Generator.Tests.AST
|
|||
[TestFixture]
|
||||
public class TestAST : ASTTestFixture
|
||||
{
|
||||
private BindingContext Context;
|
||||
|
||||
[OneTimeSetUp]
|
||||
public void Init()
|
||||
public TestAST() : base("AST.h", "ASTExtensions.h")
|
||||
{
|
||||
Context = new BindingContext(new DriverOptions());
|
||||
Context.TypeMaps = new Types.TypeMapDatabase(Context);
|
||||
|
||||
CppSharp.AST.Type.TypePrinterDelegate = type =>
|
||||
{
|
||||
PrimitiveType primitiveType;
|
||||
return type.IsPrimitiveType(out primitiveType) ? primitiveType.ToString() : string.Empty;
|
||||
};
|
||||
ParseLibrary("AST.h", "ASTExtensions.h");
|
||||
}
|
||||
|
||||
[OneTimeTearDown]
|
||||
public void CleanUp()
|
||||
{
|
||||
Driver.Dispose();
|
||||
}
|
||||
|
||||
[Test]
|
||||
|
|
|
@ -4,6 +4,8 @@ using CppSharp.Utils;
|
|||
using CppSharp.Parser;
|
||||
using CppSharp.Passes;
|
||||
using CppSharp.Generators;
|
||||
using NUnit.Framework;
|
||||
using CppSharp.AST.Extensions;
|
||||
|
||||
namespace CppSharp.Generator.Tests
|
||||
{
|
||||
|
@ -11,22 +13,44 @@ namespace CppSharp.Generator.Tests
|
|||
{
|
||||
protected Driver Driver;
|
||||
protected ASTContext AstContext;
|
||||
protected BindingContext Context;
|
||||
|
||||
public ASTTestFixture(params string[] files)
|
||||
{
|
||||
this.files = files;
|
||||
}
|
||||
|
||||
[OneTimeSetUp]
|
||||
public void Init()
|
||||
{
|
||||
ParseLibrary(files);
|
||||
}
|
||||
|
||||
[OneTimeTearDown]
|
||||
public void CleanUp()
|
||||
{
|
||||
if (files.Length > 0)
|
||||
{
|
||||
Driver.Dispose();
|
||||
}
|
||||
}
|
||||
|
||||
protected void ParseLibrary(params string[] files)
|
||||
{
|
||||
var options = new DriverOptions { GeneratorKind = GeneratorKind.CSharp };
|
||||
var parserOptions = new ParserOptions();
|
||||
if (files.Length == 0)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
var testsPath = GeneratorTest.GetTestsDirectory("Native");
|
||||
parserOptions.SkipPrivateDeclarations = true;
|
||||
var options = new DriverOptions { GeneratorKind = GeneratorKind.CSharp };
|
||||
|
||||
var module = options.AddModule("Test");
|
||||
module.IncludeDirs.Add(testsPath);
|
||||
module.IncludeDirs.Add(GeneratorTest.GetTestsDirectory("Native"));
|
||||
module.Headers.AddRange(files);
|
||||
|
||||
Driver = new Driver(options)
|
||||
{
|
||||
ParserOptions = parserOptions
|
||||
ParserOptions = new ParserOptions { SkipPrivateDeclarations = true }
|
||||
};
|
||||
|
||||
Driver.Setup();
|
||||
|
@ -37,6 +61,17 @@ namespace CppSharp.Generator.Tests
|
|||
AstContext = Driver.Context.ASTContext;
|
||||
new CleanUnitPass { Context = Driver.Context }.VisitASTContext(AstContext);
|
||||
new ResolveIncompleteDeclsPass { Context = Driver.Context }.VisitASTContext(AstContext);
|
||||
|
||||
Context = new BindingContext(options, Driver.ParserOptions);
|
||||
Context.TypeMaps = new Types.TypeMapDatabase(Context);
|
||||
|
||||
CppSharp.AST.Type.TypePrinterDelegate = type =>
|
||||
{
|
||||
PrimitiveType primitiveType;
|
||||
return type.IsPrimitiveType(out primitiveType) ? primitiveType.ToString() : string.Empty;
|
||||
};
|
||||
}
|
||||
|
||||
private readonly string[] files;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -27,8 +27,8 @@ namespace CppSharp.Utils
|
|||
options.OutputDir = Path.Combine(GetOutputDirectory(), "build", "gen", name);
|
||||
options.Quiet = true;
|
||||
options.GenerateDebugOutput = true;
|
||||
options.CheckSymbols = true;
|
||||
var testModule = options.AddModule(name);
|
||||
testModule.SharedLibraryName = $"{name}.Native";
|
||||
|
||||
Diagnostics.Message("");
|
||||
Diagnostics.Message("Generating bindings for {0} ({1})",
|
||||
|
@ -40,6 +40,8 @@ namespace CppSharp.Utils
|
|||
|
||||
var path = Path.GetFullPath(GetTestsDirectory(name));
|
||||
testModule.IncludeDirs.Add(path);
|
||||
testModule.LibraryDirs.Add(options.OutputDir);
|
||||
testModule.Libraries.Add($"{name}.Native");
|
||||
|
||||
Diagnostics.Message("Looking for tests in: {0}", path);
|
||||
var files = Directory.EnumerateFiles(path, "*.h", SearchOption.AllDirectories);
|
||||
|
|
|
@ -4,19 +4,13 @@ using CppSharp.Generators.CSharp;
|
|||
using CppSharp.Passes;
|
||||
using NUnit.Framework;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Text.RegularExpressions;
|
||||
|
||||
namespace CppSharp.Generator.Tests.Passes
|
||||
{
|
||||
[TestFixture]
|
||||
public class TestPasses : ASTTestFixture
|
||||
{
|
||||
private PassBuilder<TranslationUnitPass> passBuilder;
|
||||
|
||||
[SetUp]
|
||||
public void Setup()
|
||||
{
|
||||
|
@ -24,6 +18,12 @@ namespace CppSharp.Generator.Tests.Passes
|
|||
passBuilder = new PassBuilder<TranslationUnitPass>(Driver.Context);
|
||||
}
|
||||
|
||||
[TearDown]
|
||||
public void TearDown()
|
||||
{
|
||||
Driver.Dispose();
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void TestExtractInterfacePass()
|
||||
{
|
||||
|
@ -451,5 +451,7 @@ namespace CppSharp.Generator.Tests.Passes
|
|||
Assert.IsNotNull(@protected);
|
||||
Assert.AreEqual(AccessSpecifier.Protected, @protected.Access);
|
||||
}
|
||||
|
||||
private PassBuilder<TranslationUnitPass> passBuilder;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -9,6 +9,7 @@ namespace CppSharp.Generators
|
|||
{
|
||||
public DriverOptions Options { get; }
|
||||
public ParserOptions ParserOptions { get; set; }
|
||||
public LinkerOptions LinkerOptions { get; set; }
|
||||
|
||||
public ASTContext ASTContext { get; set; }
|
||||
public ParserTargetInfo TargetInfo { get; set; }
|
||||
|
@ -25,6 +26,7 @@ namespace CppSharp.Generators
|
|||
{
|
||||
Options = options;
|
||||
ParserOptions = parserOptions;
|
||||
LinkerOptions = new LinkerOptions();
|
||||
|
||||
Symbols = new SymbolContext();
|
||||
|
||||
|
|
|
@ -84,6 +84,7 @@ namespace CppSharp
|
|||
ValidateOptions();
|
||||
ParserOptions.Setup();
|
||||
Context = new BindingContext(Options, ParserOptions);
|
||||
Context.LinkerOptions.Setup(ParserOptions.TargetTriple, ParserOptions.LanguageVersion);
|
||||
Generator = CreateGeneratorFromKind(Options.GeneratorKind);
|
||||
}
|
||||
|
||||
|
@ -179,7 +180,7 @@ namespace CppSharp
|
|||
ClangParser.LibraryParsed += OnFileParsed;
|
||||
foreach (var module in Options.Modules)
|
||||
{
|
||||
using (var linkerOptions = new LinkerOptions())
|
||||
using (var linkerOptions = new LinkerOptions(Context.LinkerOptions))
|
||||
{
|
||||
foreach (var libraryDir in module.LibraryDirs)
|
||||
linkerOptions.AddLibraryDirs(libraryDir);
|
||||
|
@ -399,6 +400,7 @@ namespace CppSharp
|
|||
Generator?.Dispose();
|
||||
Context?.TargetInfo?.Dispose();
|
||||
ParserOptions.Dispose();
|
||||
Context?.LinkerOptions.Dispose();
|
||||
}
|
||||
|
||||
private bool hasParsingErrors;
|
||||
|
|
|
@ -42,11 +42,44 @@ namespace CppSharp.Passes
|
|||
|
||||
var e = new SymbolsCodeEventArgs(module);
|
||||
SymbolsCodeGenerated?.Invoke(this, e);
|
||||
if (string.IsNullOrEmpty(e.CustomCompiler))
|
||||
RemainingCompilationTasks--;
|
||||
else
|
||||
if (!string.IsNullOrEmpty(e.CustomCompiler))
|
||||
{
|
||||
InvokeCompiler(e.CustomCompiler, e.CompilerArguments,
|
||||
e.OutputDir, module);
|
||||
continue;
|
||||
}
|
||||
|
||||
if (Options.CheckSymbols && (module == Options.SystemModule ||
|
||||
// if the user's provided no libraries, he only wants to generate code
|
||||
(module.LibraryDirs.Count > 0 && module.Libraries.Count > 0)))
|
||||
{
|
||||
using (var linkerOptions = new LinkerOptions(Context.LinkerOptions))
|
||||
{
|
||||
foreach (var libraryDir in module.Dependencies.Union(
|
||||
new[] { module }).SelectMany(d => d.LibraryDirs))
|
||||
linkerOptions.AddLibraryDirs(libraryDir);
|
||||
|
||||
foreach (var library in module.Dependencies.Union(
|
||||
new[] { module }).SelectMany(d => d.Libraries))
|
||||
linkerOptions.AddLibraries(library);
|
||||
|
||||
using (var result = Parser.ClangParser.Build(
|
||||
Context.ParserOptions, linkerOptions, path,
|
||||
Last: remainingCompilationTasks == 1))
|
||||
{
|
||||
if (PrintDiagnostics(result))
|
||||
{
|
||||
compiledLibraries[module] = new CompiledLibrary
|
||||
{
|
||||
OutputDir = Options.OutputDir,
|
||||
Library = module.SymbolsLibraryName
|
||||
};
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
RemainingCompilationTasks--;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -146,6 +179,42 @@ namespace CppSharp.Passes
|
|||
return symbolsCodeGenerator;
|
||||
}
|
||||
|
||||
private static bool PrintDiagnostics(ParserResult result)
|
||||
{
|
||||
bool success = true;
|
||||
for (uint i = 0; i < result.DiagnosticsCount; i++)
|
||||
{
|
||||
var diag = result.GetDiagnostics(i);
|
||||
switch (diag.Level)
|
||||
{
|
||||
case ParserDiagnosticLevel.Ignored:
|
||||
case ParserDiagnosticLevel.Note:
|
||||
Diagnostics.Message("{0}({1},{2}): {3}: {4}",
|
||||
diag.FileName, diag.LineNumber, diag.ColumnNumber,
|
||||
diag.Level.ToString().ToLower(), diag.Message);
|
||||
break;
|
||||
case ParserDiagnosticLevel.Warning:
|
||||
Diagnostics.Warning("{0}({1},{2}): {3}: {4}",
|
||||
diag.FileName, diag.LineNumber, diag.ColumnNumber,
|
||||
diag.Level.ToString().ToLower(), diag.Message);
|
||||
break;
|
||||
case ParserDiagnosticLevel.Error:
|
||||
Diagnostics.Error("{0}({1},{2}): {3}: {4}",
|
||||
diag.FileName, diag.LineNumber, diag.ColumnNumber,
|
||||
diag.Level.ToString().ToLower(), diag.Message);
|
||||
success = false;
|
||||
break;
|
||||
case ParserDiagnosticLevel.Fatal:
|
||||
Diagnostics.Debug("{0}({1},{2}): {3}: {4}",
|
||||
diag.FileName, diag.LineNumber, diag.ColumnNumber,
|
||||
diag.Level.ToString().ToLower(), diag.Message);
|
||||
success = false;
|
||||
break;
|
||||
}
|
||||
}
|
||||
return success;
|
||||
}
|
||||
|
||||
private void InvokeCompiler(string compiler, string arguments, string outputDir, Module module)
|
||||
{
|
||||
new Thread(() =>
|
||||
|
@ -215,7 +284,7 @@ namespace CppSharp.Passes
|
|||
|
||||
private void CollectSymbols(string outputDir, string library)
|
||||
{
|
||||
using (var linkerOptions = new LinkerOptions())
|
||||
using (var linkerOptions = new LinkerOptions(Context.LinkerOptions))
|
||||
{
|
||||
linkerOptions.AddLibraryDirs(outputDir);
|
||||
var output = GetOutputFile(library);
|
||||
|
|
|
@ -110,7 +110,9 @@ namespace CppSharp.Passes
|
|||
|
||||
private string GetExporting()
|
||||
{
|
||||
return Context.ParserOptions.IsMicrosoftAbi ?
|
||||
return Context.ParserOptions.IsMicrosoftAbi ||
|
||||
(Context.ParserOptions.TargetTriple.IsWindows() &&
|
||||
TranslationUnit.Module == Options.SystemModule) ?
|
||||
"__declspec(dllexport) " : string.Empty;
|
||||
}
|
||||
|
||||
|
|
|
@ -0,0 +1,70 @@
|
|||
using System.Linq;
|
||||
|
||||
namespace CppSharp.Parser
|
||||
{
|
||||
public class LinkerOptions : CppLinkerOptions
|
||||
{
|
||||
public LinkerOptions()
|
||||
{
|
||||
}
|
||||
|
||||
public LinkerOptions(LinkerOptions other)
|
||||
{
|
||||
for (uint i = 0; i < other.ArgumentsCount; i++)
|
||||
{
|
||||
AddArguments(other.GetArguments(i));
|
||||
}
|
||||
for (uint i = 0; i < other.LibraryDirsCount; i++)
|
||||
{
|
||||
AddLibraryDirs(other.GetLibraryDirs(i));
|
||||
}
|
||||
for (uint i = 0; i < other.LibrariesCount; i++)
|
||||
{
|
||||
AddLibraries(other.GetLibraries(i));
|
||||
}
|
||||
}
|
||||
|
||||
public string SystemLibraryPath { get; set; }
|
||||
public System.Version MacOSSDKVersion { get; set; } = new System.Version("10.12.0");
|
||||
|
||||
public void Setup(string triple, LanguageVersion? languageVersion)
|
||||
{
|
||||
switch (Platform.Host)
|
||||
{
|
||||
case TargetPlatform.Windows:
|
||||
AddArguments("-dll");
|
||||
AddArguments("libcmt.lib");
|
||||
string[] parts = triple.Split('-');
|
||||
if (parts.Any(p => p.StartsWith("mingw") || p.StartsWith("gnu")))
|
||||
{
|
||||
AddArguments("libstdc++-6.dll");
|
||||
}
|
||||
break;
|
||||
case TargetPlatform.Linux:
|
||||
case TargetPlatform.Android:
|
||||
AddArguments(SystemLibraryPath ?? "-L/usr/lib/x86_64-linux-gnu");
|
||||
AddArguments("-lc");
|
||||
AddArguments("--shared");
|
||||
AddArguments("-rpath");
|
||||
AddArguments(".");
|
||||
break;
|
||||
case TargetPlatform.MacOS:
|
||||
case TargetPlatform.iOS:
|
||||
case TargetPlatform.WatchOS:
|
||||
case TargetPlatform.TVOS:
|
||||
if (languageVersion > LanguageVersion.C99_GNU)
|
||||
{
|
||||
AddArguments("-lc++");
|
||||
}
|
||||
AddArguments("-lSystem");
|
||||
AddArguments("-dylib");
|
||||
AddArguments("-sdk_version");
|
||||
AddArguments(MacOSSDKVersion.ToString());
|
||||
AddArguments(SystemLibraryPath ?? "-L/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib");
|
||||
AddArguments("-rpath");
|
||||
AddArguments(".");
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -65,7 +65,13 @@ namespace CppSharp.Parser
|
|||
|
||||
public class ParserOptions : CppParserOptions
|
||||
{
|
||||
public ParserOptions() => MicrosoftMode = !Platform.IsUnixPlatform;
|
||||
public ParserOptions()
|
||||
{
|
||||
MicrosoftMode = !Platform.IsUnixPlatform;
|
||||
AddCompilationOptions("-flto");
|
||||
AddCompilationOptions("-O3");
|
||||
AddCompilationOptions("-fno-use-cxa-atexit");
|
||||
}
|
||||
|
||||
public bool IsItaniumLikeAbi => !IsMicrosoftAbi;
|
||||
public bool IsMicrosoftAbi => TargetTriple.Contains("win32") ||
|
||||
|
@ -349,7 +355,7 @@ namespace CppSharp.Parser
|
|||
AddArguments("-fno-rtti");
|
||||
}
|
||||
|
||||
public string BuiltinsDir
|
||||
public string BuiltinsDir
|
||||
{
|
||||
get
|
||||
{
|
||||
|
|
|
@ -33,10 +33,6 @@ Foo::Foo(const Foo& other) : A(other.A), P(other.P),
|
|||
{
|
||||
}
|
||||
|
||||
Foo::~Foo()
|
||||
{
|
||||
}
|
||||
|
||||
int Foo::method()
|
||||
{
|
||||
return 1;
|
||||
|
@ -178,11 +174,6 @@ void Quux::setSetterWithDefaultOverload(Foo* value)
|
|||
_setterWithDefaultOverload = value;
|
||||
}
|
||||
|
||||
QColor::QColor()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
QColor::QColor(Qt::GlobalColor color)
|
||||
{
|
||||
|
||||
|
@ -241,6 +232,10 @@ int Qux::type() const
|
|||
return 0;
|
||||
}
|
||||
|
||||
Bar::Bar() : index(0)
|
||||
{
|
||||
}
|
||||
|
||||
Bar::Bar(Qux qux)
|
||||
{
|
||||
}
|
||||
|
@ -249,10 +244,6 @@ Bar::Bar(Items item)
|
|||
{
|
||||
}
|
||||
|
||||
Bar::~Bar()
|
||||
{
|
||||
}
|
||||
|
||||
int Bar::method()
|
||||
{
|
||||
return 2;
|
||||
|
@ -302,21 +293,9 @@ int Bar::type() const
|
|||
return 1;
|
||||
}
|
||||
|
||||
ForceCreationOfInterface::ForceCreationOfInterface()
|
||||
{
|
||||
}
|
||||
Baz::Baz() : P(5), functionTypedef(0) {}
|
||||
|
||||
ForceCreationOfInterface::~ForceCreationOfInterface()
|
||||
{
|
||||
}
|
||||
|
||||
Baz::Baz() : P(5) {}
|
||||
|
||||
Baz::Baz(Bar::Items item)
|
||||
{
|
||||
}
|
||||
|
||||
Baz::~Baz()
|
||||
Baz::Baz(Bar::Items item) : Baz()
|
||||
{
|
||||
}
|
||||
|
||||
|
@ -363,17 +342,18 @@ int AbstractProprietor::parent() const
|
|||
return 0;
|
||||
}
|
||||
|
||||
AbstractProprietor::AbstractProprietor()
|
||||
AbstractProprietor::AbstractProprietor() : m_value(0), m_property(0)
|
||||
{
|
||||
}
|
||||
|
||||
AbstractProprietor::AbstractProprietor(int i)
|
||||
AbstractProprietor::AbstractProprietor(int i) : AbstractProprietor()
|
||||
{
|
||||
}
|
||||
|
||||
Proprietor::Proprietor() : _items(Bar::Items::Item1), _itemsByValue(Bar::Items::Item1) {}
|
||||
|
||||
Proprietor::Proprietor(int i) : AbstractProprietor(i)
|
||||
Proprietor::Proprietor(int i) : AbstractProprietor(i),
|
||||
_items(Bar::Items::Item1), _itemsByValue(Bar::Items::Item1)
|
||||
{
|
||||
}
|
||||
|
||||
|
@ -510,7 +490,7 @@ TestDestructors::~TestDestructors() { Marker = 0xcafe; }
|
|||
|
||||
int TestDestructors::Marker = 0;
|
||||
|
||||
TestCopyConstructorVal::TestCopyConstructorVal()
|
||||
TestCopyConstructorVal::TestCopyConstructorVal() : A(0), B(0)
|
||||
{
|
||||
}
|
||||
|
||||
|
@ -520,14 +500,6 @@ TestCopyConstructorVal::TestCopyConstructorVal(const TestCopyConstructorVal& oth
|
|||
B = other.B;
|
||||
}
|
||||
|
||||
TestRenaming::TestRenaming()
|
||||
{
|
||||
}
|
||||
|
||||
TestRenaming::~TestRenaming()
|
||||
{
|
||||
}
|
||||
|
||||
void TestRenaming::name()
|
||||
{
|
||||
}
|
||||
|
@ -541,18 +513,10 @@ int TestRenaming::property()
|
|||
return 1;
|
||||
}
|
||||
|
||||
UsesPointerToEnum::UsesPointerToEnum()
|
||||
{
|
||||
}
|
||||
|
||||
void UsesPointerToEnum::hasPointerToEnumInParam(Flags* flag)
|
||||
{
|
||||
}
|
||||
|
||||
UsesPointerToEnumInParamOfVirtual::UsesPointerToEnumInParamOfVirtual()
|
||||
{
|
||||
}
|
||||
|
||||
UsesPointerToEnumInParamOfVirtual::~UsesPointerToEnumInParamOfVirtual()
|
||||
{
|
||||
}
|
||||
|
@ -578,7 +542,8 @@ UntypedFlags operator|(UntypedFlags lhs, UntypedFlags rhs)
|
|||
return static_cast<UntypedFlags>(static_cast<int>(lhs) | static_cast<int>(rhs));
|
||||
}
|
||||
|
||||
QGenericArgument::QGenericArgument(const char *name, const void* data)
|
||||
QGenericArgument::QGenericArgument(const char* name, const void* data) :
|
||||
fixedArrayInValueType { 0 }
|
||||
{
|
||||
_name = name;
|
||||
}
|
||||
|
@ -844,10 +809,6 @@ int MethodsWithDefaultValues::getA()
|
|||
return m_foo.A;
|
||||
}
|
||||
|
||||
HasOverridesWithChangedAccessBase::HasOverridesWithChangedAccessBase()
|
||||
{
|
||||
}
|
||||
|
||||
void HasOverridesWithChangedAccessBase::privateOverride(int i)
|
||||
{
|
||||
}
|
||||
|
@ -860,10 +821,6 @@ void HasOverridesWithChangedAccessBase::differentIncreasedAccessOverride()
|
|||
{
|
||||
}
|
||||
|
||||
HasOverridesWithChangedAccess::HasOverridesWithChangedAccess()
|
||||
{
|
||||
}
|
||||
|
||||
void HasOverridesWithChangedAccess::privateOverride(int i)
|
||||
{
|
||||
}
|
||||
|
@ -872,18 +829,10 @@ void HasOverridesWithChangedAccess::publicOverride()
|
|||
{
|
||||
}
|
||||
|
||||
HasOverridesWithIncreasedProtectedAccess::HasOverridesWithIncreasedProtectedAccess()
|
||||
{
|
||||
}
|
||||
|
||||
void HasOverridesWithIncreasedProtectedAccess::differentIncreasedAccessOverride()
|
||||
{
|
||||
}
|
||||
|
||||
HasOverridesWithIncreasedAccess::HasOverridesWithIncreasedAccess()
|
||||
{
|
||||
}
|
||||
|
||||
void HasOverridesWithIncreasedAccess::privateOverride(int i)
|
||||
{
|
||||
}
|
||||
|
@ -896,14 +845,6 @@ AbstractWithProperty::~AbstractWithProperty()
|
|||
{
|
||||
}
|
||||
|
||||
HasOverriddenInManaged::HasOverriddenInManaged()
|
||||
{
|
||||
}
|
||||
|
||||
HasOverriddenInManaged::~HasOverriddenInManaged()
|
||||
{
|
||||
}
|
||||
|
||||
void HasOverriddenInManaged::setOverriddenInManaged(Baz* value)
|
||||
{
|
||||
overriddenInManaged = value;
|
||||
|
@ -1015,10 +956,6 @@ void TestNativeToManagedMap::setPropertyWithNoVirtualDtor(Bar* bar)
|
|||
this->bar = bar;
|
||||
}
|
||||
|
||||
CallDtorVirtually::CallDtorVirtually()
|
||||
{
|
||||
}
|
||||
|
||||
CallDtorVirtually::~CallDtorVirtually()
|
||||
{
|
||||
Destroyed = true;
|
||||
|
@ -1037,14 +974,6 @@ CallDtorVirtually* CallDtorVirtually::getNonOwnedInstance()
|
|||
return &nonOwnedInstance;
|
||||
}
|
||||
|
||||
TestOverrideFromSecondaryBase::TestOverrideFromSecondaryBase()
|
||||
{
|
||||
}
|
||||
|
||||
TestOverrideFromSecondaryBase::~TestOverrideFromSecondaryBase()
|
||||
{
|
||||
}
|
||||
|
||||
void TestOverrideFromSecondaryBase::VirtualMember()
|
||||
{
|
||||
}
|
||||
|
@ -1099,30 +1028,10 @@ TestParamToInterfacePass::TestParamToInterfacePass() : TestParamToInterfacePassB
|
|||
{
|
||||
}
|
||||
|
||||
HasProtectedVirtual::HasProtectedVirtual()
|
||||
{
|
||||
}
|
||||
|
||||
void HasProtectedVirtual::protectedVirtual()
|
||||
{
|
||||
}
|
||||
|
||||
InheritanceBuffer::InheritanceBuffer()
|
||||
{
|
||||
}
|
||||
|
||||
InheritanceBuffer::~InheritanceBuffer()
|
||||
{
|
||||
}
|
||||
|
||||
InheritsProtectedVirtualFromSecondaryBase::InheritsProtectedVirtualFromSecondaryBase()
|
||||
{
|
||||
}
|
||||
|
||||
InheritsProtectedVirtualFromSecondaryBase::~InheritsProtectedVirtualFromSecondaryBase()
|
||||
{
|
||||
}
|
||||
|
||||
void InheritsProtectedVirtualFromSecondaryBase::protectedVirtual()
|
||||
{
|
||||
}
|
||||
|
@ -1131,27 +1040,15 @@ void freeFunctionWithUnsupportedDefaultArg(Foo foo)
|
|||
{
|
||||
}
|
||||
|
||||
TypeMappedWithOperator::TypeMappedWithOperator()
|
||||
{
|
||||
}
|
||||
|
||||
int TypeMappedWithOperator::operator |(int i)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
HasPropertyWithDerivedType::HasPropertyWithDerivedType()
|
||||
{
|
||||
}
|
||||
|
||||
void HasPropertyWithDerivedType::causeRenamingError()
|
||||
{
|
||||
}
|
||||
|
||||
HasOverrideOfHasPropertyWithDerivedType::HasOverrideOfHasPropertyWithDerivedType()
|
||||
{
|
||||
}
|
||||
|
||||
void HasOverrideOfHasPropertyWithDerivedType::causeRenamingError()
|
||||
{
|
||||
}
|
||||
|
@ -1185,32 +1082,16 @@ void MultiOverloadPtrToRef::TakePrimTypePtr(int* ptr)
|
|||
ptr[2] = 300;
|
||||
}
|
||||
|
||||
OverrideFromIndirectSecondaryBaseBase::OverrideFromIndirectSecondaryBaseBase()
|
||||
{
|
||||
}
|
||||
|
||||
int OverrideFromIndirectSecondaryBaseBase::property()
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
OverrideFromDirectSecondaryBase::OverrideFromDirectSecondaryBase()
|
||||
{
|
||||
}
|
||||
|
||||
OverrideFromIndirectSecondaryBase::OverrideFromIndirectSecondaryBase()
|
||||
{
|
||||
}
|
||||
|
||||
int OverrideFromIndirectSecondaryBase::property()
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
TestOutTypeInterfaces::TestOutTypeInterfaces()
|
||||
{
|
||||
}
|
||||
|
||||
void TestOutTypeInterfaces::funcTryInterfaceTypePtrOut(CS_OUT TestParamToInterfacePassBaseTwo* classTry)
|
||||
{
|
||||
}
|
||||
|
@ -1219,61 +1100,33 @@ void TestOutTypeInterfaces::funcTryInterfaceTypeOut(CS_OUT TestParamToInterfaceP
|
|||
{
|
||||
}
|
||||
|
||||
DerivesFromTemplateInstantiation::DerivesFromTemplateInstantiation()
|
||||
{
|
||||
}
|
||||
|
||||
int PassConstantArrayRef(int(&arr)[2])
|
||||
{
|
||||
return arr[0];
|
||||
}
|
||||
|
||||
TestComparison::TestComparison()
|
||||
{
|
||||
}
|
||||
|
||||
bool TestComparison::operator ==(const TestComparison& other) const
|
||||
{
|
||||
return A == other.A && B == other.B;
|
||||
}
|
||||
|
||||
OverridePropertyFromIndirectPrimaryBaseBase::OverridePropertyFromIndirectPrimaryBaseBase()
|
||||
{
|
||||
}
|
||||
|
||||
OverridePropertyFromIndirectPrimaryBaseBase::~OverridePropertyFromIndirectPrimaryBaseBase()
|
||||
{
|
||||
}
|
||||
|
||||
OverridePropertyFromDirectPrimaryBase::OverridePropertyFromDirectPrimaryBase()
|
||||
{
|
||||
}
|
||||
|
||||
void OverridePropertyFromDirectPrimaryBase::setProperty(int value)
|
||||
{
|
||||
}
|
||||
|
||||
OverridePropertyFromIndirectPrimaryBase::OverridePropertyFromIndirectPrimaryBase()
|
||||
{
|
||||
}
|
||||
|
||||
int OverridePropertyFromIndirectPrimaryBase::property()
|
||||
{
|
||||
return 5;
|
||||
}
|
||||
|
||||
AbstractOverrideFromSecondaryBase::AbstractOverrideFromSecondaryBase()
|
||||
{
|
||||
}
|
||||
|
||||
AbstractOverrideFromSecondaryBase::~AbstractOverrideFromSecondaryBase()
|
||||
{
|
||||
}
|
||||
|
||||
QObject::QObject()
|
||||
{
|
||||
}
|
||||
|
||||
QObject::~QObject()
|
||||
{
|
||||
}
|
||||
|
@ -1286,10 +1139,6 @@ QPaintDevice::QPaintDevice() : test(0)
|
|||
{
|
||||
}
|
||||
|
||||
QPaintDevice::~QPaintDevice()
|
||||
{
|
||||
}
|
||||
|
||||
void QPaintDevice::changeVTableLayout()
|
||||
{
|
||||
}
|
||||
|
@ -1299,10 +1148,6 @@ QWidget::QWidget()
|
|||
QApplication::instance->notify(this);
|
||||
}
|
||||
|
||||
QWidget::~QWidget()
|
||||
{
|
||||
}
|
||||
|
||||
void QWidget::event()
|
||||
{
|
||||
QApplication::instance->notify(&child);
|
||||
|
@ -1313,10 +1158,6 @@ QPainter::QPainter(QPaintDevice& paintDevice)
|
|||
paintDevice.test = 5;
|
||||
}
|
||||
|
||||
QPainter::~QPainter()
|
||||
{
|
||||
}
|
||||
|
||||
QApplication::QApplication()
|
||||
{
|
||||
instance = this;
|
||||
|
@ -1338,10 +1179,6 @@ char* HasSamePropertyInDerivedAbstractType::property()
|
|||
return 0;
|
||||
}
|
||||
|
||||
InheritsFromHasSamePropertyInDerivedAbstractType::InheritsFromHasSamePropertyInDerivedAbstractType()
|
||||
{
|
||||
}
|
||||
|
||||
InheritsFromHasSamePropertyInDerivedAbstractType::~InheritsFromHasSamePropertyInDerivedAbstractType()
|
||||
{
|
||||
}
|
||||
|
@ -1358,10 +1195,6 @@ MultipleInheritanceFieldOffsets::MultipleInheritanceFieldOffsets() : own(3)
|
|||
{
|
||||
}
|
||||
|
||||
VirtualDtorAddedInDerived::VirtualDtorAddedInDerived()
|
||||
{
|
||||
}
|
||||
|
||||
VirtualDtorAddedInDerived::~VirtualDtorAddedInDerived()
|
||||
{
|
||||
dtorCalled = true;
|
||||
|
@ -1423,14 +1256,6 @@ int HasConflictWithAbstractProperty::conflictWithProperty()
|
|||
return 0;
|
||||
}
|
||||
|
||||
HasVirtualTakesReturnsProblematicTypes::HasVirtualTakesReturnsProblematicTypes()
|
||||
{
|
||||
}
|
||||
|
||||
HasVirtualTakesReturnsProblematicTypes::~HasVirtualTakesReturnsProblematicTypes()
|
||||
{
|
||||
}
|
||||
|
||||
const char* HasVirtualTakesReturnsProblematicTypes::virtualTakesAndReturnsString(const char* c)
|
||||
{
|
||||
return c;
|
||||
|
@ -1470,10 +1295,6 @@ TestString::TestString() : unicodeConst(L"ქართული ენა"), uni
|
|||
{
|
||||
}
|
||||
|
||||
TestString::~TestString()
|
||||
{
|
||||
}
|
||||
|
||||
TestChar32String::TestChar32String() :
|
||||
thirtyTwoBitConst(U"ქართული ენა")
|
||||
{
|
||||
|
@ -1511,30 +1332,6 @@ void decltypeFunctionPointer() {}
|
|||
|
||||
void usesDecltypeFunctionPointer(funcPtr func) {}
|
||||
|
||||
PrimaryBaseWithAbstractWithDefaultArg::PrimaryBaseWithAbstractWithDefaultArg()
|
||||
{
|
||||
}
|
||||
|
||||
PrimaryBaseWithAbstractWithDefaultArg::~PrimaryBaseWithAbstractWithDefaultArg()
|
||||
{
|
||||
}
|
||||
|
||||
SecondaryBaseWithAbstractWithDefaultArg::SecondaryBaseWithAbstractWithDefaultArg()
|
||||
{
|
||||
}
|
||||
|
||||
SecondaryBaseWithAbstractWithDefaultArg::~SecondaryBaseWithAbstractWithDefaultArg()
|
||||
{
|
||||
}
|
||||
|
||||
HasSecondaryBaseWithAbstractWithDefaultArg::HasSecondaryBaseWithAbstractWithDefaultArg()
|
||||
{
|
||||
}
|
||||
|
||||
HasSecondaryBaseWithAbstractWithDefaultArg::~HasSecondaryBaseWithAbstractWithDefaultArg()
|
||||
{
|
||||
}
|
||||
|
||||
void HasSecondaryBaseWithAbstractWithDefaultArg::abstract(const Foo& foo)
|
||||
{
|
||||
}
|
||||
|
@ -1543,28 +1340,16 @@ void HasSecondaryBaseWithAbstractWithDefaultArg::abstractWithNoDefaultArg(const
|
|||
{
|
||||
}
|
||||
|
||||
MissingObjectOnVirtualCallSecondaryBase::MissingObjectOnVirtualCallSecondaryBase()
|
||||
{
|
||||
}
|
||||
|
||||
int MissingObjectOnVirtualCallSecondaryBase::f()
|
||||
{
|
||||
return 5;
|
||||
}
|
||||
|
||||
MissingObjectOnVirtualCall::MissingObjectOnVirtualCall()
|
||||
{
|
||||
}
|
||||
|
||||
int MissingObjectOnVirtualCall::f()
|
||||
{
|
||||
return 15;
|
||||
}
|
||||
|
||||
HasMissingObjectOnVirtualCall::HasMissingObjectOnVirtualCall()
|
||||
{
|
||||
}
|
||||
|
||||
int HasMissingObjectOnVirtualCall::makeMissingObjectOnVirtualCall()
|
||||
{
|
||||
return stackOverflowOnVirtualCall->f();
|
||||
|
@ -1611,26 +1396,10 @@ int ImplementsAbstractsFromPrimaryAndSecondary::abstractReturnsFieldInSecondaryB
|
|||
return field + 2;
|
||||
}
|
||||
|
||||
HasBaseSetter::HasBaseSetter()
|
||||
{
|
||||
}
|
||||
|
||||
HasBaseSetter::~HasBaseSetter()
|
||||
{
|
||||
}
|
||||
|
||||
void HasBaseSetter::setBaseSetter(int value)
|
||||
{
|
||||
}
|
||||
|
||||
HasGetterAndOverriddenSetter::HasGetterAndOverriddenSetter()
|
||||
{
|
||||
}
|
||||
|
||||
HasGetterAndOverriddenSetter::~HasGetterAndOverriddenSetter()
|
||||
{
|
||||
}
|
||||
|
||||
int HasGetterAndOverriddenSetter::baseSetter()
|
||||
{
|
||||
return field;
|
||||
|
@ -1689,10 +1458,6 @@ ComplexArrayElement::ComplexArrayElement() : BoolField(false), IntField(0), Floa
|
|||
{
|
||||
}
|
||||
|
||||
HasComplexArray::HasComplexArray()
|
||||
{
|
||||
}
|
||||
|
||||
TestIndexedProperties::TestIndexedProperties() : field(0)
|
||||
{
|
||||
}
|
||||
|
@ -1728,14 +1493,6 @@ void InlineNamespace::FunctionInsideInlineNamespace()
|
|||
{
|
||||
}
|
||||
|
||||
TestArrays::TestArrays()
|
||||
{
|
||||
}
|
||||
|
||||
TestArrays::~TestArrays()
|
||||
{
|
||||
}
|
||||
|
||||
int TestArrays::takeArrays(Foo* arrayOfPointersToObjects[], int arrayOfPrimitives[], Foo arrayOfObjects[]) const
|
||||
{
|
||||
return arrayOfPointersToObjects[0]->A + arrayOfPointersToObjects[1]->A +
|
||||
|
@ -1787,30 +1544,10 @@ int TestArrays::virtualTakeArrays(Foo *fixedArrayOfPointersToObjects[], int fixe
|
|||
return takeArrays(fixedArrayOfPointersToObjects, fixedArrayOfPrimitives, fixedArrayOfPointersToPrimitives);
|
||||
}
|
||||
|
||||
HasFixedArrayOfPointers::HasFixedArrayOfPointers()
|
||||
{
|
||||
}
|
||||
|
||||
HasFixedArrayOfPointers::~HasFixedArrayOfPointers()
|
||||
{
|
||||
}
|
||||
|
||||
SimpleInterface::SimpleInterface()
|
||||
{
|
||||
}
|
||||
|
||||
SimpleInterface::~SimpleInterface()
|
||||
{
|
||||
}
|
||||
|
||||
InterfaceTester::InterfaceTester() : interface(0)
|
||||
{
|
||||
}
|
||||
|
||||
InterfaceTester::~InterfaceTester()
|
||||
{
|
||||
}
|
||||
|
||||
int InterfaceTester::capacity()
|
||||
{
|
||||
return interface->capacity();
|
||||
|
@ -1831,14 +1568,6 @@ void InterfaceTester::setInterface(SimpleInterface* i)
|
|||
interface = i;
|
||||
}
|
||||
|
||||
HasFunctionPtrField::HasFunctionPtrField()
|
||||
{
|
||||
}
|
||||
|
||||
HasFunctionPtrField::~HasFunctionPtrField()
|
||||
{
|
||||
}
|
||||
|
||||
void va_listFunction(va_list v)
|
||||
{
|
||||
}
|
||||
|
@ -1918,7 +1647,6 @@ const char32_t* TestCSharpString32(const char32_t* in, const char32_t** out)
|
|||
return ret.data();
|
||||
}
|
||||
|
||||
ConversionFunctions::ConversionFunctions() = default;
|
||||
ConversionFunctions::operator short* () { return &field; }
|
||||
ConversionFunctions::operator short& () { return field; }
|
||||
ConversionFunctions::operator short() { return field; }
|
||||
|
|
|
@ -24,7 +24,6 @@ public:
|
|||
Foo(char16_t ch);
|
||||
Foo(wchar_t ch);
|
||||
Foo(const Foo& other);
|
||||
~Foo();
|
||||
int method();
|
||||
int operator[](int i) const;
|
||||
int operator[](unsigned int i);
|
||||
|
@ -111,7 +110,6 @@ public:
|
|||
Bar();
|
||||
Bar(Qux qux);
|
||||
Bar(Items item);
|
||||
~Bar();
|
||||
int method();
|
||||
const Foo& operator[](int i) const;
|
||||
Foo& operator[](int i);
|
||||
|
@ -143,13 +141,8 @@ private:
|
|||
Foo m_foo;
|
||||
};
|
||||
|
||||
Bar::Bar() : index(0) {}
|
||||
|
||||
class DLL_API ForceCreationOfInterface : public Foo, public Bar
|
||||
{
|
||||
public:
|
||||
ForceCreationOfInterface();
|
||||
~ForceCreationOfInterface();
|
||||
};
|
||||
|
||||
class DLL_API Baz : public Foo, public Bar
|
||||
|
@ -165,7 +158,6 @@ public:
|
|||
|
||||
Baz();
|
||||
Baz(Bar::Items item);
|
||||
~Baz();
|
||||
|
||||
int P;
|
||||
|
||||
|
@ -293,8 +285,6 @@ public:
|
|||
class DLL_API TestRenaming
|
||||
{
|
||||
public:
|
||||
TestRenaming();
|
||||
~TestRenaming();
|
||||
void name();
|
||||
void Name();
|
||||
int property();
|
||||
|
@ -312,7 +302,6 @@ enum class Flags
|
|||
class DLL_API UsesPointerToEnum
|
||||
{
|
||||
public:
|
||||
UsesPointerToEnum();
|
||||
Flags* _flags;
|
||||
void hasPointerToEnumInParam(Flags* flag);
|
||||
};
|
||||
|
@ -320,7 +309,6 @@ public:
|
|||
class DLL_API UsesPointerToEnumInParamOfVirtual
|
||||
{
|
||||
public:
|
||||
UsesPointerToEnumInParamOfVirtual();
|
||||
virtual ~UsesPointerToEnumInParamOfVirtual();
|
||||
virtual QFlags<Flags> hasPointerToEnumInParam(const QFlags<Flags>& pointerToEnum) const;
|
||||
static QFlags<Flags> callOverrideOfHasPointerToEnumInParam(
|
||||
|
@ -364,7 +352,6 @@ namespace Qt
|
|||
class DLL_API QColor
|
||||
{
|
||||
public:
|
||||
QColor();
|
||||
QColor(Qt::GlobalColor color);
|
||||
};
|
||||
|
||||
|
@ -506,7 +493,6 @@ protected:
|
|||
class DLL_API HasOverridesWithChangedAccessBase
|
||||
{
|
||||
public:
|
||||
HasOverridesWithChangedAccessBase();
|
||||
virtual void privateOverride(int i = 5);
|
||||
protected:
|
||||
virtual void publicOverride();
|
||||
|
@ -517,7 +503,6 @@ private:
|
|||
class DLL_API HasOverridesWithChangedAccess : public HasOverridesWithChangedAccessBase
|
||||
{
|
||||
public:
|
||||
HasOverridesWithChangedAccess();
|
||||
void publicOverride();
|
||||
private:
|
||||
virtual void privateOverride(int i);
|
||||
|
@ -525,8 +510,6 @@ private:
|
|||
|
||||
class DLL_API HasOverridesWithIncreasedProtectedAccess : public HasOverridesWithChangedAccess
|
||||
{
|
||||
public:
|
||||
HasOverridesWithIncreasedProtectedAccess();
|
||||
protected:
|
||||
virtual void differentIncreasedAccessOverride();
|
||||
};
|
||||
|
@ -534,7 +517,6 @@ protected:
|
|||
class DLL_API HasOverridesWithIncreasedAccess : public HasOverridesWithChangedAccess
|
||||
{
|
||||
public:
|
||||
HasOverridesWithIncreasedAccess();
|
||||
virtual void privateOverride(int i);
|
||||
virtual void differentIncreasedAccessOverride();
|
||||
};
|
||||
|
@ -557,8 +539,6 @@ class DLL_API IgnoredTypeInheritingNonIgnoredWithNoEmptyCtor : public P
|
|||
class DLL_API HasOverriddenInManaged
|
||||
{
|
||||
public:
|
||||
HasOverriddenInManaged();
|
||||
~HasOverriddenInManaged();
|
||||
void setOverriddenInManaged(Baz *value);
|
||||
int callOverriddenInManaged();
|
||||
private:
|
||||
|
@ -708,7 +688,6 @@ private:
|
|||
class DLL_API CallDtorVirtually : public HasVirtualDtor1
|
||||
{
|
||||
public:
|
||||
CallDtorVirtually();
|
||||
~CallDtorVirtually();
|
||||
static bool Destroyed;
|
||||
static HasVirtualDtor1* getHasVirtualDtor1(HasVirtualDtor1* returned);
|
||||
|
@ -728,8 +707,6 @@ protected:
|
|||
class DLL_API TestOverrideFromSecondaryBase : public Foo, public SecondaryBase
|
||||
{
|
||||
public:
|
||||
TestOverrideFromSecondaryBase();
|
||||
~TestOverrideFromSecondaryBase();
|
||||
void VirtualMember();
|
||||
void setProperty(int value);
|
||||
};
|
||||
|
@ -760,24 +737,16 @@ public:
|
|||
|
||||
class DLL_API HasProtectedVirtual
|
||||
{
|
||||
public:
|
||||
HasProtectedVirtual();
|
||||
protected:
|
||||
virtual void protectedVirtual();
|
||||
};
|
||||
|
||||
class DLL_API InheritanceBuffer : public Foo, public HasProtectedVirtual
|
||||
{
|
||||
public:
|
||||
InheritanceBuffer();
|
||||
~InheritanceBuffer();
|
||||
};
|
||||
|
||||
class DLL_API InheritsProtectedVirtualFromSecondaryBase : public InheritanceBuffer
|
||||
{
|
||||
public:
|
||||
InheritsProtectedVirtualFromSecondaryBase();
|
||||
~InheritsProtectedVirtualFromSecondaryBase();
|
||||
protected:
|
||||
void protectedVirtual();
|
||||
};
|
||||
|
@ -787,7 +756,6 @@ void DLL_API freeFunctionWithUnsupportedDefaultArg(Foo foo = Foo());
|
|||
class DLL_API TypeMappedWithOperator
|
||||
{
|
||||
public:
|
||||
TypeMappedWithOperator();
|
||||
int operator |(int i);
|
||||
};
|
||||
|
||||
|
@ -796,7 +764,6 @@ class HasOverrideOfHasPropertyWithDerivedType;
|
|||
class DLL_API HasPropertyWithDerivedType
|
||||
{
|
||||
public:
|
||||
HasPropertyWithDerivedType();
|
||||
HasOverrideOfHasPropertyWithDerivedType* hasPropertyWithDerivedTypeSubclass;
|
||||
virtual void causeRenamingError();
|
||||
};
|
||||
|
@ -804,7 +771,6 @@ public:
|
|||
class DLL_API HasOverrideOfHasPropertyWithDerivedType : public HasPropertyWithDerivedType
|
||||
{
|
||||
public:
|
||||
HasOverrideOfHasPropertyWithDerivedType();
|
||||
virtual void causeRenamingError();
|
||||
};
|
||||
|
||||
|
@ -824,20 +790,16 @@ public:
|
|||
class DLL_API OverrideFromIndirectSecondaryBaseBase
|
||||
{
|
||||
public:
|
||||
OverrideFromIndirectSecondaryBaseBase();
|
||||
virtual int property();
|
||||
};
|
||||
|
||||
class DLL_API OverrideFromDirectSecondaryBase : public Foo, public OverrideFromIndirectSecondaryBaseBase
|
||||
{
|
||||
public:
|
||||
OverrideFromDirectSecondaryBase();
|
||||
};
|
||||
|
||||
class DLL_API OverrideFromIndirectSecondaryBase : public OverrideFromDirectSecondaryBase
|
||||
{
|
||||
public:
|
||||
OverrideFromIndirectSecondaryBase();
|
||||
int property();
|
||||
};
|
||||
|
||||
|
@ -850,7 +812,6 @@ public:
|
|||
class DLL_API TestOutTypeInterfaces
|
||||
{
|
||||
public:
|
||||
TestOutTypeInterfaces();
|
||||
void funcTryInterfaceTypePtrOut(CS_OUT TestParamToInterfacePassBaseTwo* classTry);
|
||||
void funcTryInterfaceTypeOut(CS_OUT TestParamToInterfacePassBaseTwo classTry);
|
||||
};
|
||||
|
@ -870,8 +831,6 @@ TemplateWithDependentField<T>::TemplateWithDependentField()
|
|||
|
||||
class DLL_API DerivesFromTemplateInstantiation : public TemplateWithDependentField<int>
|
||||
{
|
||||
public:
|
||||
DerivesFromTemplateInstantiation();
|
||||
};
|
||||
|
||||
DLL_API int PassConstantArrayRef(int(&arr)[2]);
|
||||
|
@ -879,7 +838,6 @@ DLL_API int PassConstantArrayRef(int(&arr)[2]);
|
|||
class DLL_API TestComparison
|
||||
{
|
||||
public:
|
||||
TestComparison();
|
||||
int A;
|
||||
float B;
|
||||
bool operator ==(const TestComparison& other) const;
|
||||
|
@ -888,7 +846,6 @@ public:
|
|||
class DLL_API OverridePropertyFromIndirectPrimaryBaseBase
|
||||
{
|
||||
public:
|
||||
OverridePropertyFromIndirectPrimaryBaseBase();
|
||||
virtual ~OverridePropertyFromIndirectPrimaryBaseBase();
|
||||
virtual int property() = 0;
|
||||
virtual void setProperty(int value) = 0;
|
||||
|
@ -897,21 +854,18 @@ public:
|
|||
class DLL_API OverridePropertyFromDirectPrimaryBase : public OverridePropertyFromIndirectPrimaryBaseBase
|
||||
{
|
||||
public:
|
||||
OverridePropertyFromDirectPrimaryBase();
|
||||
void setProperty(int value);
|
||||
};
|
||||
|
||||
class DLL_API OverridePropertyFromIndirectPrimaryBase : public OverridePropertyFromDirectPrimaryBase
|
||||
{
|
||||
public:
|
||||
OverridePropertyFromIndirectPrimaryBase();
|
||||
int property();
|
||||
};
|
||||
|
||||
class DLL_API AbstractOverrideFromSecondaryBase : public Foo, public OverridePropertyFromIndirectPrimaryBaseBase
|
||||
{
|
||||
public:
|
||||
AbstractOverrideFromSecondaryBase();
|
||||
virtual ~AbstractOverrideFromSecondaryBase();
|
||||
virtual void setProperty(int value) = 0;
|
||||
};
|
||||
|
@ -919,7 +873,6 @@ public:
|
|||
class DLL_API QObject
|
||||
{
|
||||
public:
|
||||
QObject();
|
||||
virtual ~QObject();
|
||||
virtual void event();
|
||||
};
|
||||
|
@ -928,7 +881,6 @@ class DLL_API QPaintDevice
|
|||
{
|
||||
public:
|
||||
QPaintDevice();
|
||||
~QPaintDevice();
|
||||
int test;
|
||||
virtual void changeVTableLayout();
|
||||
};
|
||||
|
@ -937,7 +889,6 @@ class DLL_API QWidget : public QObject, QPaintDevice
|
|||
{
|
||||
public:
|
||||
QWidget();
|
||||
~QWidget();
|
||||
virtual void event();
|
||||
private:
|
||||
QObject child;
|
||||
|
@ -947,7 +898,6 @@ class DLL_API QPainter
|
|||
{
|
||||
public:
|
||||
QPainter(QPaintDevice& paintDevice);
|
||||
~QPainter();
|
||||
};
|
||||
|
||||
class DLL_API QApplication : public QObject
|
||||
|
@ -965,10 +915,9 @@ public:
|
|||
char* property();
|
||||
};
|
||||
|
||||
class InheritsFromHasSamePropertyInDerivedAbstractType : public HasSamePropertyInDerivedAbstractType
|
||||
class DLL_API InheritsFromHasSamePropertyInDerivedAbstractType : public HasSamePropertyInDerivedAbstractType
|
||||
{
|
||||
public:
|
||||
InheritsFromHasSamePropertyInDerivedAbstractType();
|
||||
virtual ~InheritsFromHasSamePropertyInDerivedAbstractType();
|
||||
virtual int property() = 0;
|
||||
};
|
||||
|
@ -998,7 +947,6 @@ public:
|
|||
class DLL_API VirtualDtorAddedInDerived : public Foo
|
||||
{
|
||||
public:
|
||||
VirtualDtorAddedInDerived();
|
||||
virtual ~VirtualDtorAddedInDerived();
|
||||
static bool dtorCalled;
|
||||
};
|
||||
|
@ -1082,8 +1030,6 @@ class ForwardInOtherUnitButSameModule;
|
|||
class DLL_API HasVirtualTakesReturnsProblematicTypes
|
||||
{
|
||||
public:
|
||||
HasVirtualTakesReturnsProblematicTypes();
|
||||
~HasVirtualTakesReturnsProblematicTypes();
|
||||
virtual const char* virtualTakesAndReturnsString(const char* c);
|
||||
const char* callsVirtualToReturnString(const char* c);
|
||||
virtual bool virtualTakesAndReturnsBool(bool b);
|
||||
|
@ -1150,7 +1096,6 @@ class DLL_API TestString
|
|||
{
|
||||
public:
|
||||
TestString();
|
||||
~TestString();
|
||||
const wchar_t* unicodeConst;
|
||||
wchar_t* unicode;
|
||||
};
|
||||
|
@ -1189,24 +1134,18 @@ DLL_API void usesDecltypeFunctionPointer(funcPtr func);
|
|||
class DLL_API PrimaryBaseWithAbstractWithDefaultArg
|
||||
{
|
||||
public:
|
||||
PrimaryBaseWithAbstractWithDefaultArg();
|
||||
~PrimaryBaseWithAbstractWithDefaultArg();
|
||||
virtual void abstractWithNoDefaultArg(const Foo& foo) = 0;
|
||||
};
|
||||
|
||||
class DLL_API SecondaryBaseWithAbstractWithDefaultArg
|
||||
{
|
||||
public:
|
||||
SecondaryBaseWithAbstractWithDefaultArg();
|
||||
~SecondaryBaseWithAbstractWithDefaultArg();
|
||||
virtual void abstract(const Foo& foo = Foo()) = 0;
|
||||
};
|
||||
|
||||
class DLL_API HasSecondaryBaseWithAbstractWithDefaultArg : public PrimaryBaseWithAbstractWithDefaultArg, public SecondaryBaseWithAbstractWithDefaultArg
|
||||
{
|
||||
public:
|
||||
HasSecondaryBaseWithAbstractWithDefaultArg();
|
||||
~HasSecondaryBaseWithAbstractWithDefaultArg();
|
||||
virtual void abstract(const Foo& foo = Foo());
|
||||
virtual void abstractWithNoDefaultArg(const Foo& foo = Foo());
|
||||
};
|
||||
|
@ -1214,21 +1153,18 @@ public:
|
|||
class DLL_API MissingObjectOnVirtualCallSecondaryBase
|
||||
{
|
||||
public:
|
||||
MissingObjectOnVirtualCallSecondaryBase();
|
||||
virtual int f();
|
||||
};
|
||||
|
||||
class DLL_API MissingObjectOnVirtualCall : public HasVirtualDtor1, public MissingObjectOnVirtualCallSecondaryBase
|
||||
{
|
||||
public:
|
||||
MissingObjectOnVirtualCall();
|
||||
int f();
|
||||
};
|
||||
|
||||
class DLL_API HasMissingObjectOnVirtualCall
|
||||
{
|
||||
public:
|
||||
HasMissingObjectOnVirtualCall();
|
||||
int makeMissingObjectOnVirtualCall();
|
||||
void setMissingObjectOnVirtualCall(MissingObjectOnVirtualCall* value);
|
||||
private:
|
||||
|
@ -1267,16 +1203,12 @@ private:
|
|||
class DLL_API HasBaseSetter
|
||||
{
|
||||
public:
|
||||
HasBaseSetter();
|
||||
~HasBaseSetter();
|
||||
virtual void setBaseSetter(int value);
|
||||
};
|
||||
|
||||
class DLL_API HasGetterAndOverriddenSetter : public HasBaseSetter
|
||||
{
|
||||
public:
|
||||
HasGetterAndOverriddenSetter();
|
||||
~HasGetterAndOverriddenSetter();
|
||||
void setBaseSetter(int value);
|
||||
int baseSetter();
|
||||
protected:
|
||||
|
@ -1343,7 +1275,6 @@ struct DLL_API ComplexArrayElement
|
|||
|
||||
struct DLL_API HasComplexArray
|
||||
{
|
||||
HasComplexArray();
|
||||
ComplexArrayElement complexArray[ARRAY_LENGTH_MACRO];
|
||||
};
|
||||
|
||||
|
@ -1378,8 +1309,6 @@ inline namespace InlineNamespace
|
|||
class DLL_API TestArrays
|
||||
{
|
||||
public:
|
||||
TestArrays();
|
||||
~TestArrays();
|
||||
int takeArrays(Foo* arrayOfPointersToObjects[], int arrayOfPrimitives[], Foo arrayOfObjects[]) const;
|
||||
int takeArrays(Foo* fixedArrayOfPointersToObjects[3], int fixedArrayOfPrimitives[4],
|
||||
int* fixedArrayOfPointersToPrimitives[5]) const;
|
||||
|
@ -1398,8 +1327,6 @@ class TestForwardedClassInAnotherUnit
|
|||
class DLL_API HasFixedArrayOfPointers
|
||||
{
|
||||
public:
|
||||
HasFixedArrayOfPointers();
|
||||
~HasFixedArrayOfPointers();
|
||||
Foo* fixedArrayOfPointers[3];
|
||||
};
|
||||
|
||||
|
@ -1414,8 +1341,6 @@ static int FOOBAR_CONSTANT = 42;
|
|||
class DLL_API SimpleInterface
|
||||
{
|
||||
public:
|
||||
SimpleInterface();
|
||||
~SimpleInterface();
|
||||
virtual int size() const = 0;
|
||||
virtual int capacity() const = 0;
|
||||
virtual void* get(int n) = 0;
|
||||
|
@ -1426,7 +1351,6 @@ class DLL_API InterfaceTester
|
|||
{
|
||||
public:
|
||||
InterfaceTester();
|
||||
~InterfaceTester();
|
||||
int capacity();
|
||||
int size();
|
||||
void* get(int n);
|
||||
|
@ -1438,8 +1362,6 @@ private:
|
|||
class DLL_API HasFunctionPtrField
|
||||
{
|
||||
public:
|
||||
HasFunctionPtrField();
|
||||
~HasFunctionPtrField();
|
||||
int (*functionPtrField)(const char*);
|
||||
int (*functionPtrTakeFunctionPtrField)(int(*TakenInFuncPtrField)());
|
||||
};
|
||||
|
@ -1510,7 +1432,6 @@ struct DLL_API ClassZeroAllocatedMemoryTest
|
|||
|
||||
struct DLL_API ConversionFunctions
|
||||
{
|
||||
ConversionFunctions();
|
||||
operator short* ();
|
||||
operator short& ();
|
||||
operator short();
|
||||
|
|
|
@ -23,22 +23,6 @@ void T2::setField(int value)
|
|||
field = value;
|
||||
}
|
||||
|
||||
DerivedFromSpecializationOfUnsupportedTemplate::DerivedFromSpecializationOfUnsupportedTemplate()
|
||||
{
|
||||
}
|
||||
|
||||
DerivedFromSpecializationOfUnsupportedTemplate::~DerivedFromSpecializationOfUnsupportedTemplate()
|
||||
{
|
||||
}
|
||||
|
||||
HasDefaultTemplateArgument<bool, bool>::HasDefaultTemplateArgument()
|
||||
{
|
||||
}
|
||||
|
||||
HasDefaultTemplateArgument<bool, bool>::~HasDefaultTemplateArgument()
|
||||
{
|
||||
}
|
||||
|
||||
bool HasDefaultTemplateArgument<bool, bool>::property()
|
||||
{
|
||||
return field;
|
||||
|
@ -61,22 +45,6 @@ void HasDefaultTemplateArgument<bool, bool>::setStaticProperty(const bool& t)
|
|||
|
||||
bool HasDefaultTemplateArgument<bool, bool>::staticField;
|
||||
|
||||
DerivesFromExplicitSpecialization::DerivesFromExplicitSpecialization()
|
||||
{
|
||||
}
|
||||
|
||||
DerivesFromExplicitSpecialization::~DerivesFromExplicitSpecialization()
|
||||
{
|
||||
}
|
||||
|
||||
HasVirtualTemplate::HasVirtualTemplate()
|
||||
{
|
||||
}
|
||||
|
||||
HasVirtualTemplate::~HasVirtualTemplate()
|
||||
{
|
||||
}
|
||||
|
||||
VirtualTemplate<int> HasVirtualTemplate::getVCopy()
|
||||
{
|
||||
return *v;
|
||||
|
@ -92,26 +60,6 @@ int HasVirtualTemplate::function()
|
|||
return v->function();
|
||||
}
|
||||
|
||||
SpecializedInterfaceForMap::SpecializedInterfaceForMap()
|
||||
{
|
||||
}
|
||||
|
||||
SpecializedInterfaceForMap::~SpecializedInterfaceForMap()
|
||||
{
|
||||
}
|
||||
|
||||
HasSpecializationForSecondaryBase::HasSpecializationForSecondaryBase()
|
||||
{
|
||||
}
|
||||
|
||||
HasSpecializationForSecondaryBase::~HasSpecializationForSecondaryBase()
|
||||
{
|
||||
}
|
||||
|
||||
TemplateSpecializer::TemplateSpecializer()
|
||||
{
|
||||
}
|
||||
|
||||
IndependentFields<bool> TemplateSpecializer::getIndependentFields()
|
||||
{
|
||||
return IndependentFields<bool>();
|
||||
|
@ -141,14 +89,6 @@ VirtualTemplate<void> TemplateSpecializer::returnSpecializedWithVoid()
|
|||
return VirtualTemplate<void>();
|
||||
}
|
||||
|
||||
RegularDynamic::RegularDynamic()
|
||||
{
|
||||
}
|
||||
|
||||
RegularDynamic::~RegularDynamic()
|
||||
{
|
||||
}
|
||||
|
||||
void RegularDynamic::virtualFunction()
|
||||
{
|
||||
}
|
||||
|
|
|
@ -6,6 +6,12 @@
|
|||
#include <string>
|
||||
#include <map>
|
||||
|
||||
class DeriveProtectedDtor
|
||||
{
|
||||
protected:
|
||||
~DeriveProtectedDtor() {}
|
||||
};
|
||||
|
||||
class DLL_API QString
|
||||
{
|
||||
};
|
||||
|
@ -249,9 +255,6 @@ DependentValueFields<T> DependentValueFields<T>::operator+(const DependentValueF
|
|||
|
||||
class DLL_API DerivedFromSpecializationOfUnsupportedTemplate : public DependentValueFields<int>
|
||||
{
|
||||
public:
|
||||
DerivedFromSpecializationOfUnsupportedTemplate();
|
||||
~DerivedFromSpecializationOfUnsupportedTemplate();
|
||||
};
|
||||
|
||||
template <typename T>
|
||||
|
@ -346,8 +349,6 @@ template <>
|
|||
class DLL_API HasDefaultTemplateArgument<bool, bool>
|
||||
{
|
||||
public:
|
||||
HasDefaultTemplateArgument();
|
||||
~HasDefaultTemplateArgument();
|
||||
bool property();
|
||||
void setProperty(const bool& t);
|
||||
static bool staticProperty();
|
||||
|
@ -432,9 +433,6 @@ DerivesFromTemplateWithExplicitSpecialization<T, D>::~DerivesFromTemplateWithExp
|
|||
|
||||
class DLL_API DerivesFromExplicitSpecialization : public DerivesFromTemplateWithExplicitSpecialization<bool, bool>
|
||||
{
|
||||
public:
|
||||
DerivesFromExplicitSpecialization();
|
||||
~DerivesFromExplicitSpecialization();
|
||||
};
|
||||
|
||||
template <typename T>
|
||||
|
@ -455,6 +453,7 @@ class TemplateWithIndexer
|
|||
{
|
||||
public:
|
||||
TemplateWithIndexer();
|
||||
~TemplateWithIndexer();
|
||||
T& operator[](int i);
|
||||
T& operator[](const T& key);
|
||||
T& operator[](const char* string);
|
||||
|
@ -470,6 +469,11 @@ TemplateWithIndexer<T>::TemplateWithIndexer()
|
|||
{
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
TemplateWithIndexer<T>::~TemplateWithIndexer<T>()
|
||||
{
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
T& TemplateWithIndexer<T>::operator[](int i)
|
||||
{
|
||||
|
@ -542,8 +546,6 @@ T* VirtualTemplate<T>::function(T* t)
|
|||
class DLL_API HasVirtualTemplate
|
||||
{
|
||||
public:
|
||||
HasVirtualTemplate();
|
||||
~HasVirtualTemplate();
|
||||
VirtualTemplate<int> getVCopy();
|
||||
void setV(VirtualTemplate<int>* value);
|
||||
int function();
|
||||
|
@ -554,18 +556,12 @@ private:
|
|||
|
||||
class DLL_API SpecializedInterfaceForMap : public InternalWithExtension<char>
|
||||
{
|
||||
public:
|
||||
SpecializedInterfaceForMap();
|
||||
~SpecializedInterfaceForMap();
|
||||
};
|
||||
|
||||
class DLL_API HasSpecializationForSecondaryBase : public DependentValueFields<int>,
|
||||
public IndependentFields<int>,
|
||||
public InternalWithExtension<float>
|
||||
{
|
||||
public:
|
||||
HasSpecializationForSecondaryBase();
|
||||
~HasSpecializationForSecondaryBase();
|
||||
};
|
||||
|
||||
template <typename T>
|
||||
|
@ -574,7 +570,6 @@ class TemplateInAnotherUnit;
|
|||
class DLL_API TemplateSpecializer
|
||||
{
|
||||
public:
|
||||
TemplateSpecializer();
|
||||
template <typename T>
|
||||
class NestedTemplate
|
||||
{
|
||||
|
@ -652,8 +647,6 @@ struct MapResultType<InputSequence<T>, MapFunctor>
|
|||
class DLL_API RegularDynamic
|
||||
{
|
||||
public:
|
||||
RegularDynamic();
|
||||
~RegularDynamic();
|
||||
virtual void virtualFunction();
|
||||
};
|
||||
|
||||
|
@ -789,37 +782,6 @@ template<> inline void* qbswap<1>(const void *source, size_t count, void *dest)
|
|||
return 0;
|
||||
}
|
||||
|
||||
// force the symbols for the template instantiations because we do not have the auto-compilation for the generated C++ source
|
||||
template class DLL_API IndependentFields<int>;
|
||||
template class DLL_API IndependentFields<bool>;
|
||||
template class DLL_API IndependentFields<T1>;
|
||||
template class DLL_API IndependentFields<const T1>;
|
||||
template class DLL_API IndependentFields<std::string>;
|
||||
template class DLL_API Base<int>;
|
||||
template class DLL_API DependentValueFields<int>;
|
||||
template class DLL_API DependentValueFields<int*>;
|
||||
template class DLL_API DependentValueFields<float>;
|
||||
template class DLL_API DependentValueFields<double>;
|
||||
template class DLL_API DependentPointerFields<float>;
|
||||
template class DLL_API VirtualTemplate<int>;
|
||||
template class DLL_API VirtualTemplate<bool>;
|
||||
template class DLL_API HasDefaultTemplateArgument<int, int>;
|
||||
template class DLL_API DerivedChangesTypeName<T1>;
|
||||
template class DLL_API TemplateWithIndexer<int>;
|
||||
template class DLL_API TemplateWithIndexer<void*>;
|
||||
template class DLL_API TemplateWithIndexer<UsedInTemplatedIndexer>;
|
||||
template class DLL_API TemplateWithIndexer<T1>;
|
||||
template class DLL_API TemplateWithIndexer<T2*>;
|
||||
template class DLL_API TemplateWithIndexer<float>;
|
||||
template class DLL_API TemplateWithIndexer<const char*>;
|
||||
template class DLL_API TemplateDerivedFromRegularDynamic<RegularDynamic>;
|
||||
template class DLL_API HasCtorWithMappedToEnum<TestFlag>;
|
||||
template class DLL_API TwoTemplateArgs<int*, int*>;
|
||||
template class DLL_API TwoTemplateArgs<int*, int>;
|
||||
template class DLL_API TwoTemplateArgs<int*, float>;
|
||||
template class DLL_API TwoTemplateArgs<const char*, int>;
|
||||
template class DLL_API TwoTemplateArgs<QString, int>;
|
||||
|
||||
class TestForwardedClassInAnotherUnit;
|
||||
|
||||
// Forward declaration of class as friend
|
||||
|
|
|
@ -1,42 +1,6 @@
|
|||
#include "Common.h"
|
||||
#include <string.h>
|
||||
|
||||
TestPacking::TestPacking()
|
||||
{
|
||||
}
|
||||
|
||||
TestPacking1::TestPacking1()
|
||||
{
|
||||
}
|
||||
|
||||
TestPacking1::~TestPacking1()
|
||||
{
|
||||
}
|
||||
|
||||
TestPacking2::TestPacking2()
|
||||
{
|
||||
}
|
||||
|
||||
TestPacking2::~TestPacking2()
|
||||
{
|
||||
}
|
||||
|
||||
TestPacking4::TestPacking4()
|
||||
{
|
||||
}
|
||||
|
||||
TestPacking4::~TestPacking4()
|
||||
{
|
||||
}
|
||||
|
||||
TestPacking8::TestPacking8()
|
||||
{
|
||||
}
|
||||
|
||||
TestPacking8::~TestPacking8()
|
||||
{
|
||||
}
|
||||
|
||||
Foo::NestedAbstract::~NestedAbstract()
|
||||
{
|
||||
}
|
||||
|
@ -76,7 +40,7 @@ void Foo::TakesTypedefedPtr(FooPtr date)
|
|||
{
|
||||
}
|
||||
|
||||
int Foo::TakesRef(const Foo &other)
|
||||
int Foo::TakesRef(const Foo& other)
|
||||
{
|
||||
return other.A;
|
||||
}
|
||||
|
@ -111,7 +75,7 @@ Foo2 Foo2::operator<<(signed int i)
|
|||
|
||||
Foo2 Foo2::operator<<(signed long l)
|
||||
{
|
||||
return *this << (signed int) l;
|
||||
return *this << (signed int)l;
|
||||
}
|
||||
|
||||
char Foo2::testCharMarshalling(char c)
|
||||
|
@ -155,10 +119,6 @@ bool operator ==(Bar::Item item, const Bar& bar)
|
|||
return item == bar.RetItem1();
|
||||
}
|
||||
|
||||
Bar2::Nested::Nested()
|
||||
{
|
||||
}
|
||||
|
||||
Bar2::Nested::operator int() const
|
||||
{
|
||||
return 300;
|
||||
|
@ -189,16 +149,6 @@ Foo2 Bar2::needFixedInstance() const
|
|||
return f;
|
||||
}
|
||||
|
||||
Hello::Hello ()
|
||||
{
|
||||
//cout << "Ctor!" << "\n";
|
||||
}
|
||||
|
||||
Hello::Hello(const Hello& hello)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void Hello::PrintHello(const char* s)
|
||||
{
|
||||
//cout << "PrintHello: " << s << "\n";
|
||||
|
@ -315,28 +265,28 @@ void Hello::EnumInOutRef(Enum& e)
|
|||
|
||||
void Hello::StringOut(CS_OUT const char** str)
|
||||
{
|
||||
*str = "HelloStringOut";
|
||||
*str = "HelloStringOut";
|
||||
}
|
||||
|
||||
void Hello::StringOutRef(CS_OUT const char*& str)
|
||||
{
|
||||
str = "HelloStringOutRef";
|
||||
str = "HelloStringOutRef";
|
||||
}
|
||||
|
||||
void Hello::StringInOut(CS_IN_OUT const char** str)
|
||||
{
|
||||
if (strcmp(*str, "Hello") == 0)
|
||||
*str = "StringInOut";
|
||||
else
|
||||
*str = "Failed";
|
||||
if (strcmp(*str, "Hello") == 0)
|
||||
*str = "StringInOut";
|
||||
else
|
||||
*str = "Failed";
|
||||
}
|
||||
|
||||
void Hello::StringInOutRef(CS_IN_OUT const char*& str)
|
||||
{
|
||||
if (strcmp(str, "Hello") == 0)
|
||||
str = "StringInOutRef";
|
||||
else
|
||||
str = "Failed";
|
||||
if (strcmp(str, "Hello") == 0)
|
||||
str = "StringInOutRef";
|
||||
else
|
||||
str = "Failed";
|
||||
}
|
||||
|
||||
void Hello::StringTypedef(const TypedefChar* str)
|
||||
|
@ -386,18 +336,6 @@ AbstractFoo::~AbstractFoo()
|
|||
{
|
||||
}
|
||||
|
||||
ImplementsAbstractFoo::ImplementsAbstractFoo()
|
||||
{
|
||||
}
|
||||
|
||||
ImplementsAbstractFoo::ImplementsAbstractFoo(const ImplementsAbstractFoo& other)
|
||||
{
|
||||
}
|
||||
|
||||
ImplementsAbstractFoo::~ImplementsAbstractFoo()
|
||||
{
|
||||
}
|
||||
|
||||
int ImplementsAbstractFoo::pureFunction(typedefInOverride i)
|
||||
{
|
||||
return 5;
|
||||
|
@ -413,10 +351,6 @@ int ImplementsAbstractFoo::pureFunction2(bool* ok)
|
|||
return 15;
|
||||
}
|
||||
|
||||
ReturnsAbstractFoo::ReturnsAbstractFoo() {}
|
||||
|
||||
ReturnsAbstractFoo::~ReturnsAbstractFoo() {}
|
||||
|
||||
const AbstractFoo& ReturnsAbstractFoo::getFoo()
|
||||
{
|
||||
return i;
|
||||
|
@ -431,10 +365,6 @@ Ex2* DerivedException::clone()
|
|||
return 0;
|
||||
}
|
||||
|
||||
DefaultParameters::DefaultParameters()
|
||||
{
|
||||
}
|
||||
|
||||
void DefaultParameters::Foo(int a, int b)
|
||||
{
|
||||
}
|
||||
|
@ -451,10 +381,6 @@ void DefaultParameters::Bar()
|
|||
{
|
||||
}
|
||||
|
||||
common::common()
|
||||
{
|
||||
}
|
||||
|
||||
int test(common& s)
|
||||
{
|
||||
return 5;
|
||||
|
@ -465,7 +391,7 @@ int operator *(TestMoveOperatorToClass klass, int b)
|
|||
return klass.A * b;
|
||||
}
|
||||
|
||||
TestMoveOperatorToClass::TestMoveOperatorToClass()
|
||||
TestMoveOperatorToClass::TestMoveOperatorToClass()
|
||||
{
|
||||
}
|
||||
|
||||
|
@ -495,14 +421,6 @@ void va_listFunction(va_list v)
|
|||
{
|
||||
}
|
||||
|
||||
TestNestedTypes::TestNestedTypes()
|
||||
{
|
||||
}
|
||||
|
||||
TestNestedTypes::~TestNestedTypes()
|
||||
{
|
||||
}
|
||||
|
||||
void TestDelegates::MarshalUnattributedDelegate(DelegateInGlobalNamespace del)
|
||||
{
|
||||
}
|
||||
|
@ -530,12 +448,12 @@ int (*TestDelegates::MarshalAnonymousDelegate4())(int n)
|
|||
return f;
|
||||
}
|
||||
|
||||
int TestDelegates::MarshalAnonymousDelegate5(int (STDCALL *del)(int))
|
||||
int TestDelegates::MarshalAnonymousDelegate5(int (STDCALL* del)(int))
|
||||
{
|
||||
return del(2);
|
||||
}
|
||||
|
||||
int TestDelegates::MarshalAnonymousDelegate6(int (STDCALL *del)(int))
|
||||
int TestDelegates::MarshalAnonymousDelegate6(int (STDCALL* del)(int))
|
||||
{
|
||||
return del(3);
|
||||
}
|
||||
|
@ -545,17 +463,17 @@ ClassA::ClassA(int value)
|
|||
Value = value;
|
||||
}
|
||||
|
||||
ClassB::ClassB(const ClassA &x)
|
||||
ClassB::ClassB(const ClassA& x)
|
||||
{
|
||||
Value = x.Value;
|
||||
}
|
||||
|
||||
ClassC::ClassC(const ClassA *x)
|
||||
ClassC::ClassC(const ClassA* x)
|
||||
{
|
||||
Value = x->Value;
|
||||
}
|
||||
|
||||
ClassC::ClassC(const ClassB &x)
|
||||
ClassC::ClassC(const ClassB& x)
|
||||
{
|
||||
Value = x.Value;
|
||||
}
|
||||
|
@ -596,14 +514,6 @@ void DelegateNamespace::f2(void (*)())
|
|||
{
|
||||
}
|
||||
|
||||
HasStdString::HasStdString()
|
||||
{
|
||||
}
|
||||
|
||||
HasStdString::~HasStdString()
|
||||
{
|
||||
}
|
||||
|
||||
std::string HasStdString::testStdString(const std::string& s)
|
||||
{
|
||||
return s + "_test";
|
||||
|
@ -629,10 +539,10 @@ int Function()
|
|||
}
|
||||
|
||||
TestProperties::TestProperties() : Field(0), ArchiveName(0),
|
||||
FieldValue(0), _refToPrimitiveInSetter(0),
|
||||
_getterAndSetterWithTheSameName(0), _setterReturnsBoolean(0),
|
||||
_virtualSetterReturnsBoolean(0), _conflict(Conflict::Value1),
|
||||
ConstRefField(Field)
|
||||
FieldValue(0), _refToPrimitiveInSetter(0),
|
||||
_getterAndSetterWithTheSameName(0), _setterReturnsBoolean(0),
|
||||
_virtualSetterReturnsBoolean(0), _conflict(Conflict::Value1),
|
||||
ConstRefField(Field)
|
||||
{
|
||||
}
|
||||
|
||||
|
@ -822,11 +732,6 @@ int TestProperties::GetArchiveName() const
|
|||
{
|
||||
return 20;
|
||||
}
|
||||
|
||||
HasOverridenSetter::HasOverridenSetter()
|
||||
{
|
||||
}
|
||||
|
||||
void HasOverridenSetter::setVirtual(bool value)
|
||||
{
|
||||
}
|
||||
|
@ -885,23 +790,13 @@ Bar& TestIndexedProperties::operator[](const Foo& key)
|
|||
return bar;
|
||||
}
|
||||
|
||||
TestVariables::TestVariables()
|
||||
{
|
||||
}
|
||||
|
||||
int TestVariables::VALUE;
|
||||
void TestVariables::SetValue(int value) { VALUE = value; }
|
||||
|
||||
TestWideStrings::TestWideStrings()
|
||||
{
|
||||
}
|
||||
|
||||
LPCWSTR TestWideStrings::GetWidePointer() { return L"Hello"; }
|
||||
|
||||
LPCWSTR TestWideStrings::GetWideNullPointer() { return 0; }
|
||||
|
||||
TestFixedArrays::TestFixedArrays() {}
|
||||
|
||||
InternalCtorAmbiguity::InternalCtorAmbiguity(void* param)
|
||||
{
|
||||
// cause a crash to indicate this is the incorrect ctor to invoke
|
||||
|
@ -989,10 +884,6 @@ void HasVirtualProperty::setProtectedProperty(int value)
|
|||
{
|
||||
}
|
||||
|
||||
ChangedAccessOfInheritedProperty::ChangedAccessOfInheritedProperty()
|
||||
{
|
||||
}
|
||||
|
||||
int ChangedAccessOfInheritedProperty::getProperty()
|
||||
{
|
||||
return 2;
|
||||
|
@ -1011,19 +902,11 @@ void ChangedAccessOfInheritedProperty::setProtectedProperty(int value)
|
|||
{
|
||||
}
|
||||
|
||||
ReturnsEmpty::ReturnsEmpty()
|
||||
{
|
||||
}
|
||||
|
||||
Empty ReturnsEmpty::getEmpty()
|
||||
{
|
||||
return Empty();
|
||||
}
|
||||
|
||||
RefTypeClassPassTry::RefTypeClassPassTry()
|
||||
{
|
||||
}
|
||||
|
||||
void funcTryRefTypePtrOut(CS_OUT RefTypeClassPassTry* classTry)
|
||||
{
|
||||
}
|
||||
|
@ -1044,10 +927,6 @@ HasProblematicFields::HasProblematicFields() : b(false), c(0)
|
|||
{
|
||||
}
|
||||
|
||||
HasVirtualReturningHasProblematicFields::HasVirtualReturningHasProblematicFields()
|
||||
{
|
||||
}
|
||||
|
||||
HasProblematicFields HasVirtualReturningHasProblematicFields::returnsProblematicFields()
|
||||
{
|
||||
return HasProblematicFields();
|
||||
|
@ -1067,45 +946,20 @@ int DerivedClassVirtual::retInt(const Foo2& foo)
|
|||
{
|
||||
return 2;
|
||||
}
|
||||
|
||||
DerivedClassAbstractVirtual::~DerivedClassAbstractVirtual()
|
||||
{
|
||||
}
|
||||
|
||||
DerivedClassOverrideAbstractVirtual::DerivedClassOverrideAbstractVirtual()
|
||||
{
|
||||
}
|
||||
|
||||
int DerivedClassOverrideAbstractVirtual::retInt(const Foo& foo)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
BufferForVirtualFunction::BufferForVirtualFunction()
|
||||
{
|
||||
}
|
||||
|
||||
OverridesNonDirectVirtual::OverridesNonDirectVirtual()
|
||||
{
|
||||
}
|
||||
|
||||
int OverridesNonDirectVirtual::retInt(const Foo& foo)
|
||||
{
|
||||
return 3;
|
||||
}
|
||||
|
||||
AbstractWithVirtualDtor::AbstractWithVirtualDtor()
|
||||
{
|
||||
}
|
||||
|
||||
AbstractWithVirtualDtor::~AbstractWithVirtualDtor()
|
||||
{
|
||||
}
|
||||
|
||||
NonTrivialDtorBase::NonTrivialDtorBase()
|
||||
{
|
||||
}
|
||||
|
||||
NonTrivialDtorBase::~NonTrivialDtorBase()
|
||||
{
|
||||
}
|
||||
|
@ -1132,19 +986,11 @@ void NonTrivialDtor::setDtorCalled(bool value)
|
|||
|
||||
bool NonTrivialDtor::dtorCalled = false;
|
||||
|
||||
DerivedFromTemplateInstantiationWithVirtual::DerivedFromTemplateInstantiationWithVirtual()
|
||||
{
|
||||
}
|
||||
|
||||
int func_union(union_t u)
|
||||
{
|
||||
return u.c;
|
||||
}
|
||||
|
||||
HasProtectedEnum::HasProtectedEnum()
|
||||
{
|
||||
}
|
||||
|
||||
void HasProtectedEnum::function(ProtectedEnum param)
|
||||
{
|
||||
}
|
||||
|
@ -1157,18 +1003,6 @@ void FuncWithTemplateTypeAlias(TypeAliasTemplate<int> i)
|
|||
{
|
||||
}
|
||||
|
||||
HasAbstractOperator::~HasAbstractOperator()
|
||||
{
|
||||
}
|
||||
|
||||
HasOverloadsWithDifferentPointerKindsToSameType::HasOverloadsWithDifferentPointerKindsToSameType()
|
||||
{
|
||||
}
|
||||
|
||||
HasOverloadsWithDifferentPointerKindsToSameType::~HasOverloadsWithDifferentPointerKindsToSameType()
|
||||
{
|
||||
}
|
||||
|
||||
void HasOverloadsWithDifferentPointerKindsToSameType::overload(int& i)
|
||||
{
|
||||
}
|
||||
|
@ -1239,7 +1073,7 @@ HasCopyAndMoveConstructor::HasCopyAndMoveConstructor(int value)
|
|||
field = value;
|
||||
}
|
||||
|
||||
HasCopyAndMoveConstructor::HasCopyAndMoveConstructor(const HasCopyAndMoveConstructor &other)
|
||||
HasCopyAndMoveConstructor::HasCopyAndMoveConstructor(const HasCopyAndMoveConstructor& other)
|
||||
{
|
||||
field = other.field;
|
||||
}
|
||||
|
@ -1249,31 +1083,11 @@ HasCopyAndMoveConstructor::HasCopyAndMoveConstructor(HasCopyAndMoveConstructor&&
|
|||
field = other.field;
|
||||
}
|
||||
|
||||
HasCopyAndMoveConstructor::~HasCopyAndMoveConstructor()
|
||||
{
|
||||
}
|
||||
|
||||
int HasCopyAndMoveConstructor::getField()
|
||||
{
|
||||
return field;
|
||||
}
|
||||
|
||||
HasVirtualFunctionsWithStringParams::HasVirtualFunctionsWithStringParams()
|
||||
{
|
||||
}
|
||||
|
||||
HasVirtualFunctionsWithStringParams::~HasVirtualFunctionsWithStringParams()
|
||||
{
|
||||
}
|
||||
|
||||
ImplementsVirtualFunctionsWithStringParams::ImplementsVirtualFunctionsWithStringParams()
|
||||
{
|
||||
}
|
||||
|
||||
ImplementsVirtualFunctionsWithStringParams::~ImplementsVirtualFunctionsWithStringParams()
|
||||
{
|
||||
}
|
||||
|
||||
void ImplementsVirtualFunctionsWithStringParams::PureVirtualFunctionWithStringParams(std::string testString1, std::string testString2)
|
||||
{
|
||||
}
|
||||
|
@ -1283,14 +1097,6 @@ int HasVirtualFunctionsWithStringParams::VirtualFunctionWithStringParam(std::str
|
|||
return 5;
|
||||
}
|
||||
|
||||
HasVirtualFunctionWithBoolParams::HasVirtualFunctionWithBoolParams()
|
||||
{
|
||||
}
|
||||
|
||||
HasVirtualFunctionWithBoolParams::~HasVirtualFunctionWithBoolParams()
|
||||
{
|
||||
}
|
||||
|
||||
bool HasVirtualFunctionWithBoolParams::virtualFunctionWithBoolParamAndReturnsBool(bool testBool)
|
||||
{
|
||||
return testBool;
|
||||
|
@ -1300,10 +1106,6 @@ HasProtectedCtorWithProtectedParam::HasProtectedCtorWithProtectedParam(Protected
|
|||
{
|
||||
}
|
||||
|
||||
SecondaryBaseWithIgnoredVirtualMethod::SecondaryBaseWithIgnoredVirtualMethod()
|
||||
{
|
||||
}
|
||||
|
||||
SecondaryBaseWithIgnoredVirtualMethod::~SecondaryBaseWithIgnoredVirtualMethod()
|
||||
{
|
||||
}
|
||||
|
@ -1316,10 +1118,6 @@ void SecondaryBaseWithIgnoredVirtualMethod::ignored(const IgnoredType& ignoredPa
|
|||
{
|
||||
}
|
||||
|
||||
DerivedFromSecondaryBaseWithIgnoredVirtualMethod::DerivedFromSecondaryBaseWithIgnoredVirtualMethod()
|
||||
{
|
||||
}
|
||||
|
||||
DerivedFromSecondaryBaseWithIgnoredVirtualMethod::~DerivedFromSecondaryBaseWithIgnoredVirtualMethod()
|
||||
{
|
||||
}
|
||||
|
@ -1336,24 +1134,6 @@ AmbiguousParamNames::AmbiguousParamNames(int instance, int in)
|
|||
{
|
||||
}
|
||||
|
||||
AmbiguousParamNames::~AmbiguousParamNames()
|
||||
{
|
||||
}
|
||||
|
||||
HasPropertyNamedAsParent::HasPropertyNamedAsParent()
|
||||
{
|
||||
}
|
||||
|
||||
HasPropertyNamedAsParent::~HasPropertyNamedAsParent()
|
||||
{
|
||||
}
|
||||
|
||||
ReturnByValueWithReturnParam::ReturnByValueWithReturnParam() {}
|
||||
|
||||
ReturnByValueWithReturnParam::ReturnByValueWithReturnParam(const ReturnByValueWithReturnParam& other) : _ptr(other._ptr) {}
|
||||
|
||||
ReturnByValueWithReturnParam::~ReturnByValueWithReturnParam() {}
|
||||
|
||||
int ReturnByValueWithReturnParam::getUseCount() { return _ptr.use_count(); }
|
||||
|
||||
ReturnByValueWithReturnParam ReturnByValueWithReturnParamFactory::generate()
|
||||
|
@ -1410,7 +1190,7 @@ LPCSTR TakeTypedefedMappedType(LPCSTR string)
|
|||
return UTF8.data();
|
||||
}
|
||||
|
||||
StructWithCopyCtor::StructWithCopyCtor() {}
|
||||
StructWithCopyCtor::StructWithCopyCtor() : mBits(0) {}
|
||||
StructWithCopyCtor::StructWithCopyCtor(const StructWithCopyCtor& other) : mBits(other.mBits) {}
|
||||
|
||||
uint16_t TestStructWithCopyCtorByValue(StructWithCopyCtor s)
|
||||
|
@ -1426,30 +1206,14 @@ DerivedCovariant::~DerivedCovariant()
|
|||
{
|
||||
}
|
||||
|
||||
NonPrimitiveType::NonPrimitiveType()
|
||||
{
|
||||
}
|
||||
|
||||
int NonPrimitiveType::GetFoo()
|
||||
{
|
||||
return foo;
|
||||
}
|
||||
|
||||
TestFixedNonPrimitiveArrays::TestFixedNonPrimitiveArrays()
|
||||
{
|
||||
}
|
||||
|
||||
TestGetterSetterToProperties::TestGetterSetterToProperties()
|
||||
{
|
||||
}
|
||||
|
||||
int TestGetterSetterToProperties::getWidth() { return 640; }
|
||||
int TestGetterSetterToProperties::getHeight() { return 480; }
|
||||
|
||||
PointerToTypedefPointerTest::PointerToTypedefPointerTest()
|
||||
{
|
||||
}
|
||||
|
||||
void DLL_API PointerToTypedefPointerTestMethod(LPPointerToTypedefPointerTest* lp, int valToSet)
|
||||
{
|
||||
(*(*lp)).val = valToSet;
|
||||
|
@ -1465,7 +1229,7 @@ TestArraysPointers::TestArraysPointers(MyEnum* values, int count)
|
|||
if (values && count) Value = values[0];
|
||||
}
|
||||
|
||||
TestCopyConstructorRef::TestCopyConstructorRef()
|
||||
TestCopyConstructorRef::TestCopyConstructorRef() : A(0), B(0)
|
||||
{
|
||||
}
|
||||
|
||||
|
@ -1478,10 +1242,6 @@ TestCopyConstructorRef::TestCopyConstructorRef(const TestCopyConstructorRef& oth
|
|||
|
||||
SomeStruct::SomeStruct() : p(1) {}
|
||||
|
||||
ClassWithOverloadedOperators::ClassWithOverloadedOperators() {
|
||||
|
||||
}
|
||||
|
||||
ClassWithOverloadedOperators::ClassWithOverloadedOperators::operator char() { return 1; }
|
||||
ClassWithOverloadedOperators::operator int() { return 2; }
|
||||
ClassWithOverloadedOperators::operator short() { return 3; }
|
||||
|
|
|
@ -14,39 +14,26 @@ public:
|
|||
int i1;
|
||||
int i2;
|
||||
bool b;
|
||||
TestPacking();
|
||||
};
|
||||
|
||||
#pragma pack(1)
|
||||
class DLL_API TestPacking1: public TestPacking
|
||||
{
|
||||
public:
|
||||
TestPacking1();
|
||||
~TestPacking1();
|
||||
};
|
||||
|
||||
#pragma pack(2)
|
||||
class DLL_API TestPacking2: public TestPacking
|
||||
{
|
||||
public:
|
||||
TestPacking2();
|
||||
~TestPacking2();
|
||||
};
|
||||
|
||||
#pragma pack(4)
|
||||
class DLL_API TestPacking4: public TestPacking
|
||||
{
|
||||
public:
|
||||
TestPacking4();
|
||||
~TestPacking4();
|
||||
};
|
||||
|
||||
#pragma pack(8)
|
||||
class DLL_API TestPacking8: public TestPacking
|
||||
{
|
||||
public:
|
||||
TestPacking8();
|
||||
~TestPacking8();
|
||||
};
|
||||
#pragma pack()
|
||||
|
||||
|
@ -76,7 +63,7 @@ public:
|
|||
EmptyEnum2
|
||||
};
|
||||
|
||||
class NestedAbstract
|
||||
class DLL_API NestedAbstract
|
||||
{
|
||||
public:
|
||||
virtual ~NestedAbstract();
|
||||
|
@ -171,7 +158,6 @@ struct DLL_API Bar2 : public Bar
|
|||
|
||||
struct DLL_API Nested
|
||||
{
|
||||
Nested();
|
||||
operator int() const;
|
||||
};
|
||||
|
||||
|
@ -215,9 +201,6 @@ public:
|
|||
long l;
|
||||
};
|
||||
|
||||
Hello ();
|
||||
Hello(const Hello& hello);
|
||||
|
||||
void PrintHello(const char* s);
|
||||
bool test1(int i, float f);
|
||||
int add(int a, int b);
|
||||
|
@ -268,9 +251,6 @@ public:
|
|||
class DLL_API ImplementsAbstractFoo : public AbstractFoo
|
||||
{
|
||||
public:
|
||||
ImplementsAbstractFoo();
|
||||
ImplementsAbstractFoo(const ImplementsAbstractFoo& other);
|
||||
~ImplementsAbstractFoo();
|
||||
typedef int typedefInOverride;
|
||||
virtual int pureFunction(typedefInOverride i = 0);
|
||||
virtual int pureFunction1();
|
||||
|
@ -281,8 +261,6 @@ private:
|
|||
class DLL_API ReturnsAbstractFoo
|
||||
{
|
||||
public:
|
||||
ReturnsAbstractFoo();
|
||||
~ReturnsAbstractFoo();
|
||||
const AbstractFoo& getFoo();
|
||||
|
||||
private:
|
||||
|
@ -314,7 +292,6 @@ struct DLL_API DerivedException : public Exception
|
|||
// Tests for ambiguous call to native functions with default parameters
|
||||
struct DLL_API DefaultParameters
|
||||
{
|
||||
DefaultParameters();
|
||||
void Foo(int a, int b = 0);
|
||||
void Foo(int a);
|
||||
|
||||
|
@ -337,8 +314,6 @@ class Derived : public Base<Derived>
|
|||
// Tests the MoveFunctionToClassPass
|
||||
class DLL_API common
|
||||
{
|
||||
public:
|
||||
common();
|
||||
};
|
||||
|
||||
DLL_API int test(common& s);
|
||||
|
@ -511,8 +486,6 @@ namespace SomeNamespace
|
|||
class DLL_API ClassWithOverloadedOperators
|
||||
{
|
||||
public:
|
||||
ClassWithOverloadedOperators();
|
||||
|
||||
operator char();
|
||||
operator int();
|
||||
operator short();
|
||||
|
@ -611,7 +584,6 @@ private:
|
|||
class DLL_API HasOverridenSetter : public TestProperties
|
||||
{
|
||||
public:
|
||||
HasOverridenSetter();
|
||||
void setVirtual(bool value) override;
|
||||
|
||||
int virtualSetterReturnsBoolean() override;
|
||||
|
@ -666,7 +638,6 @@ public:
|
|||
// Tests variables
|
||||
struct DLL_API TestVariables
|
||||
{
|
||||
TestVariables();
|
||||
static int VALUE;
|
||||
void SetValue(int value = VALUE);
|
||||
};
|
||||
|
@ -674,7 +645,6 @@ struct DLL_API TestVariables
|
|||
typedef const wchar_t * LPCWSTR;
|
||||
struct DLL_API TestWideStrings
|
||||
{
|
||||
TestWideStrings();
|
||||
LPCWSTR GetWidePointer();
|
||||
LPCWSTR GetWideNullPointer();
|
||||
};
|
||||
|
@ -686,7 +656,6 @@ typedef void (*VoidPtrRetFunctionTypedef) ();
|
|||
class DLL_API TestFixedArrays
|
||||
{
|
||||
public:
|
||||
TestFixedArrays();
|
||||
VoidPtrRetFunctionTypedef Array[10];
|
||||
#ifndef _MSC_VER
|
||||
TestWideStrings ZeroSizedClassArray[0];
|
||||
|
@ -706,7 +675,6 @@ public:
|
|||
class DLL_API NonPrimitiveType
|
||||
{
|
||||
public:
|
||||
NonPrimitiveType();
|
||||
int GetFoo();
|
||||
|
||||
int foo;
|
||||
|
@ -715,13 +683,11 @@ public:
|
|||
class DLL_API TestFixedNonPrimitiveArrays
|
||||
{
|
||||
public:
|
||||
TestFixedNonPrimitiveArrays();
|
||||
NonPrimitiveType NonPrimitiveTypeArray[3];
|
||||
};
|
||||
|
||||
struct DLL_API TestGetterSetterToProperties
|
||||
{
|
||||
TestGetterSetterToProperties();
|
||||
int getWidth();
|
||||
int getHeight();
|
||||
};
|
||||
|
@ -800,8 +766,6 @@ DLL_API void va_listFunction(va_list v);
|
|||
struct DLL_API TestNestedTypes
|
||||
{
|
||||
public:
|
||||
TestNestedTypes();
|
||||
~TestNestedTypes();
|
||||
union as_types
|
||||
{
|
||||
int as_int;
|
||||
|
@ -822,8 +786,6 @@ public:
|
|||
class DLL_API HasStdString
|
||||
{
|
||||
public:
|
||||
HasStdString();
|
||||
~HasStdString();
|
||||
std::string testStdString(const std::string& s);
|
||||
std::string testStdStringPassedByValue(std::string s);
|
||||
std::string s;
|
||||
|
@ -895,8 +857,6 @@ public:
|
|||
|
||||
class DLL_API RefTypeClassPassTry
|
||||
{
|
||||
public:
|
||||
RefTypeClassPassTry();
|
||||
};
|
||||
|
||||
void DLL_API funcTryRefTypePtrOut(CS_OUT RefTypeClassPassTry* classTry);
|
||||
|
@ -925,7 +885,6 @@ protected:
|
|||
class DLL_API ChangedAccessOfInheritedProperty : public HasVirtualProperty
|
||||
{
|
||||
public:
|
||||
ChangedAccessOfInheritedProperty();
|
||||
int getProtectedProperty();
|
||||
void setProtectedProperty(int value);
|
||||
protected:
|
||||
|
@ -940,7 +899,6 @@ class DLL_API Empty
|
|||
class DLL_API ReturnsEmpty
|
||||
{
|
||||
public:
|
||||
ReturnsEmpty();
|
||||
Empty getEmpty();
|
||||
};
|
||||
|
||||
|
@ -960,7 +918,6 @@ public:
|
|||
class DLL_API HasVirtualReturningHasProblematicFields
|
||||
{
|
||||
public:
|
||||
HasVirtualReturningHasProblematicFields();
|
||||
virtual HasProblematicFields returnsProblematicFields();
|
||||
};
|
||||
|
||||
|
@ -982,27 +939,22 @@ public:
|
|||
class DLL_API DerivedClassAbstractVirtual : public DerivedClassVirtual
|
||||
{
|
||||
public:
|
||||
~DerivedClassAbstractVirtual();
|
||||
virtual int retInt(const Foo& foo) = 0;
|
||||
};
|
||||
|
||||
class DLL_API DerivedClassOverrideAbstractVirtual : public DerivedClassAbstractVirtual
|
||||
{
|
||||
public:
|
||||
DerivedClassOverrideAbstractVirtual();
|
||||
virtual int retInt(const Foo& foo);
|
||||
};
|
||||
|
||||
class DLL_API BufferForVirtualFunction : public BaseClassVirtual
|
||||
{
|
||||
public:
|
||||
BufferForVirtualFunction();
|
||||
};
|
||||
|
||||
class DLL_API OverridesNonDirectVirtual : public BufferForVirtualFunction
|
||||
{
|
||||
public:
|
||||
OverridesNonDirectVirtual();
|
||||
virtual int retInt(const Foo& foo);
|
||||
};
|
||||
|
||||
|
@ -1080,7 +1032,6 @@ AbstractTemplate<T>::AbstractTemplate()
|
|||
class DLL_API AbstractWithVirtualDtor
|
||||
{
|
||||
public:
|
||||
AbstractWithVirtualDtor();
|
||||
virtual ~AbstractWithVirtualDtor();
|
||||
virtual void abstract() = 0;
|
||||
};
|
||||
|
@ -1088,7 +1039,6 @@ public:
|
|||
class DLL_API NonTrivialDtorBase
|
||||
{
|
||||
public:
|
||||
NonTrivialDtorBase();
|
||||
~NonTrivialDtorBase();
|
||||
};
|
||||
|
||||
|
@ -1143,8 +1093,6 @@ int FunctionTemplateWithDependentTypeDefaultExpr(size_t size = sizeof(T)) {
|
|||
|
||||
class DLL_API DerivedFromTemplateInstantiationWithVirtual : public TemplateWithVirtual<int>
|
||||
{
|
||||
public:
|
||||
DerivedFromTemplateInstantiationWithVirtual();
|
||||
};
|
||||
|
||||
typedef union
|
||||
|
@ -1156,8 +1104,6 @@ int DLL_API func_union(union_t u);
|
|||
|
||||
class DLL_API HasProtectedEnum
|
||||
{
|
||||
public:
|
||||
HasProtectedEnum();
|
||||
protected:
|
||||
enum class ProtectedEnum
|
||||
{
|
||||
|
@ -1207,7 +1153,6 @@ private:
|
|||
class DLL_API HasAbstractOperator
|
||||
{
|
||||
public:
|
||||
~HasAbstractOperator();
|
||||
virtual bool operator==(const HasAbstractOperator& other) = 0;
|
||||
};
|
||||
|
||||
|
@ -1267,8 +1212,6 @@ enum
|
|||
class DLL_API HasOverloadsWithDifferentPointerKindsToSameType
|
||||
{
|
||||
public:
|
||||
HasOverloadsWithDifferentPointerKindsToSameType();
|
||||
~HasOverloadsWithDifferentPointerKindsToSameType();
|
||||
void overload(int& i);
|
||||
void overload(int&& i);
|
||||
void overload(const int& i);
|
||||
|
@ -1294,7 +1237,6 @@ public:
|
|||
HasCopyAndMoveConstructor(int value);
|
||||
HasCopyAndMoveConstructor(const HasCopyAndMoveConstructor& other);
|
||||
HasCopyAndMoveConstructor(HasCopyAndMoveConstructor&& other);
|
||||
~HasCopyAndMoveConstructor();
|
||||
int getField();
|
||||
private:
|
||||
int field;
|
||||
|
@ -1303,8 +1245,6 @@ private:
|
|||
class DLL_API HasVirtualFunctionsWithStringParams
|
||||
{
|
||||
public:
|
||||
HasVirtualFunctionsWithStringParams();
|
||||
~HasVirtualFunctionsWithStringParams();
|
||||
virtual void PureVirtualFunctionWithStringParams(std::string testString1, std::string testString2) = 0;
|
||||
virtual int VirtualFunctionWithStringParam(std::string testString);
|
||||
};
|
||||
|
@ -1312,16 +1252,12 @@ public:
|
|||
class DLL_API ImplementsVirtualFunctionsWithStringParams : public HasVirtualFunctionsWithStringParams
|
||||
{
|
||||
public:
|
||||
ImplementsVirtualFunctionsWithStringParams();
|
||||
~ImplementsVirtualFunctionsWithStringParams();
|
||||
virtual void PureVirtualFunctionWithStringParams(std::string testString1, std::string testString2);
|
||||
};
|
||||
|
||||
class DLL_API HasVirtualFunctionWithBoolParams
|
||||
{
|
||||
public:
|
||||
HasVirtualFunctionWithBoolParams();
|
||||
~HasVirtualFunctionWithBoolParams();
|
||||
virtual bool virtualFunctionWithBoolParamAndReturnsBool(bool testBool);
|
||||
};
|
||||
|
||||
|
@ -1338,7 +1274,7 @@ protected:
|
|||
class DLL_API SecondaryBaseWithIgnoredVirtualMethod
|
||||
{
|
||||
public:
|
||||
SecondaryBaseWithIgnoredVirtualMethod();
|
||||
// HACK: do not delete: work around https://github.com/mono/CppSharp/issues/1534
|
||||
~SecondaryBaseWithIgnoredVirtualMethod();
|
||||
virtual void generated();
|
||||
virtual void ignored(const IgnoredType& ignoredParam);
|
||||
|
@ -1347,7 +1283,7 @@ public:
|
|||
class DLL_API DerivedFromSecondaryBaseWithIgnoredVirtualMethod : public Foo, public SecondaryBaseWithIgnoredVirtualMethod
|
||||
{
|
||||
public:
|
||||
DerivedFromSecondaryBaseWithIgnoredVirtualMethod();
|
||||
// HACK: do not delete: work around https://github.com/mono/CppSharp/issues/1534
|
||||
~DerivedFromSecondaryBaseWithIgnoredVirtualMethod();
|
||||
void generated();
|
||||
void ignored(const IgnoredType& ignoredParam);
|
||||
|
@ -1357,23 +1293,17 @@ class DLL_API AmbiguousParamNames
|
|||
{
|
||||
public:
|
||||
AmbiguousParamNames(int instance, int in);
|
||||
~AmbiguousParamNames();
|
||||
};
|
||||
|
||||
class DLL_API HasPropertyNamedAsParent
|
||||
{
|
||||
public:
|
||||
HasPropertyNamedAsParent();
|
||||
~HasPropertyNamedAsParent();
|
||||
int hasPropertyNamedAsParent;
|
||||
};
|
||||
|
||||
class DLL_API ReturnByValueWithReturnParam
|
||||
{
|
||||
public:
|
||||
ReturnByValueWithReturnParam();
|
||||
ReturnByValueWithReturnParam(const ReturnByValueWithReturnParam& other);
|
||||
~ReturnByValueWithReturnParam();
|
||||
int getUseCount();
|
||||
|
||||
private:
|
||||
|
@ -1577,7 +1507,6 @@ QScopedPointer<QObjectData> d_ptr;
|
|||
|
||||
struct DLL_API PointerToTypedefPointerTest
|
||||
{
|
||||
PointerToTypedefPointerTest();
|
||||
int val;
|
||||
};
|
||||
typedef PointerToTypedefPointerTest *LPPointerToTypedefPointerTest;
|
||||
|
|
|
@ -2,14 +2,6 @@
|
|||
|
||||
std::string Foo::StringVariable = "";
|
||||
|
||||
Foo::Foo()
|
||||
{
|
||||
}
|
||||
|
||||
Foo::~Foo()
|
||||
{
|
||||
}
|
||||
|
||||
// TODO: move this, it has nothing to do with Unicode, it's here only not to break the CLI branch
|
||||
int Foo::operator[](int i) const
|
||||
{
|
||||
|
|
|
@ -4,9 +4,6 @@
|
|||
class DLL_API Foo
|
||||
{
|
||||
public:
|
||||
Foo();
|
||||
~Foo();
|
||||
|
||||
const char* Unicode;
|
||||
static std::string StringVariable;
|
||||
|
||||
|
|
|
@ -41,14 +41,6 @@ int HasVirtualInCore::virtualInCore(int parameter)
|
|||
return 1;
|
||||
}
|
||||
|
||||
SecondaryBase::SecondaryBase()
|
||||
{
|
||||
}
|
||||
|
||||
SecondaryBase::~SecondaryBase()
|
||||
{
|
||||
}
|
||||
|
||||
void SecondaryBase::function()
|
||||
{
|
||||
}
|
||||
|
|
|
@ -13,11 +13,6 @@ namespace OverlappingNamespace
|
|||
|
||||
class DLL_API InBaseLib
|
||||
{
|
||||
public:
|
||||
InBaseLib()
|
||||
{
|
||||
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
|
@ -115,10 +110,5 @@ typedef DerivedFromSecondaryBaseInDependency RenameDerivedBeforeBase;
|
|||
class DLL_API SecondaryBase
|
||||
{
|
||||
public:
|
||||
SecondaryBase();
|
||||
~SecondaryBase();
|
||||
void function();
|
||||
};
|
||||
|
||||
// force the symbols for the template instantiations because we do not have the auto-compilation for the generated C++ source
|
||||
template class DLL_API TemplateClass<int>;
|
||||
|
|
|
@ -23,7 +23,7 @@ namespace CppSharp.Tests
|
|||
module.IncludeDirs.Add(Path.GetFullPath(GetTestsDirectory(@base)));
|
||||
module.Headers.Add($"{@base}.h");
|
||||
module.OutputNamespace = @base;
|
||||
module.LibraryDirs.Add(driver.Options.OutputDir);
|
||||
module.LibraryDirs.AddRange(driver.Options.Modules[1].LibraryDirs);
|
||||
module.Libraries.Add($"{@base}.Native");
|
||||
driver.Options.Modules[1].Dependencies.Add(module);
|
||||
}
|
||||
|
|
|
@ -33,14 +33,6 @@ void Derived::setNestedNSComponent(OverlappingNamespace::InBaseLib c)
|
|||
nestedNSComponent = c;
|
||||
}
|
||||
|
||||
Derived2::Derived2()
|
||||
{
|
||||
}
|
||||
|
||||
Derived2::~Derived2()
|
||||
{
|
||||
}
|
||||
|
||||
Base3 Derived2::getBase()
|
||||
{
|
||||
return baseComponent;
|
||||
|
@ -85,32 +77,16 @@ DerivedFromExternalSpecialization::DerivedFromExternalSpecialization(int i,
|
|||
{
|
||||
}
|
||||
|
||||
DerivedFromExternalSpecialization::~DerivedFromExternalSpecialization()
|
||||
{
|
||||
}
|
||||
|
||||
TemplateWithIndependentFields<Base3> DerivedFromExternalSpecialization::returnExternalSpecialization()
|
||||
{
|
||||
return TemplateWithIndependentFields<Base3>();
|
||||
}
|
||||
|
||||
HasVirtualInDependency::HasVirtualInDependency()
|
||||
{
|
||||
}
|
||||
|
||||
int HasVirtualInDependency::callManagedOverride()
|
||||
{
|
||||
return managedObject->virtualInCore(0);
|
||||
}
|
||||
|
||||
DerivedFromSecondaryBaseInDependency::DerivedFromSecondaryBaseInDependency()
|
||||
{
|
||||
}
|
||||
|
||||
DerivedFromSecondaryBaseInDependency::~DerivedFromSecondaryBaseInDependency()
|
||||
{
|
||||
}
|
||||
|
||||
bool operator<<(const Base& b, const char* str)
|
||||
{
|
||||
return false;
|
||||
|
|
|
@ -48,8 +48,6 @@ template <typename T> class TemplateClass;
|
|||
class DLL_API Derived2 : public Base3
|
||||
{
|
||||
public:
|
||||
Derived2();
|
||||
~Derived2();
|
||||
Base3 baseComponent;
|
||||
Base3 getBase();
|
||||
void setBase(Base3);
|
||||
|
@ -71,7 +69,6 @@ private:
|
|||
class DLL_API HasVirtualInDependency : public HasVirtualInCore
|
||||
{
|
||||
public:
|
||||
HasVirtualInDependency();
|
||||
HasVirtualInDependency* managedObject;
|
||||
int callManagedOverride();
|
||||
};
|
||||
|
@ -82,15 +79,11 @@ public:
|
|||
DerivedFromExternalSpecialization(int i,
|
||||
TemplateWithIndependentFields<HasVirtualInDependency> defaultExternalSpecialization =
|
||||
TemplateWithIndependentFields<HasVirtualInDependency>());
|
||||
~DerivedFromExternalSpecialization();
|
||||
TemplateWithIndependentFields<Base3> returnExternalSpecialization();
|
||||
};
|
||||
|
||||
class DLL_API DerivedFromSecondaryBaseInDependency : public Derived, public SecondaryBase
|
||||
{
|
||||
public:
|
||||
DerivedFromSecondaryBaseInDependency();
|
||||
~DerivedFromSecondaryBaseInDependency();
|
||||
};
|
||||
|
||||
DLL_API bool operator<<(const Base& b, const char* str);
|
||||
|
|
|
@ -18,11 +18,5 @@
|
|||
<GeneratorInputs Include="*.h" />
|
||||
<CustomAdditionalCompileInputs Include="@(GeneratorInputs)" />
|
||||
<UpToDateCheckInput Include="@(GeneratorInputs)" />
|
||||
<ModuleFiles Include="$(OutputPath)*Std-symbols.*"
|
||||
Exclude="$(OutputPath)Std-symbols.pdb;$(OutputPath)Std-symbols.exp;$(OutputPath)Std-symbols.lib" />
|
||||
</ItemGroup>
|
||||
|
||||
<Target Name="CopyStdSymbols" AfterTargets="PostBuildEvent">
|
||||
<Copy SourceFiles="@(ModuleFiles)" DestinationFolder="$(GenDir)$(TestName)" />
|
||||
</Target>
|
||||
</Project>
|
|
@ -1,14 +1,6 @@
|
|||
#include "VTables.h"
|
||||
#include <typeinfo>
|
||||
|
||||
Foo::Foo()
|
||||
{
|
||||
}
|
||||
|
||||
Foo::~Foo()
|
||||
{
|
||||
}
|
||||
|
||||
int Foo::vfoo()
|
||||
{
|
||||
return 5;
|
||||
|
@ -39,14 +31,6 @@ int FooCallFoo(Foo* foo)
|
|||
return foo->vfoo() + 2;
|
||||
}
|
||||
|
||||
BaseClassVirtual::BaseClassVirtual()
|
||||
{
|
||||
}
|
||||
|
||||
BaseClassVirtual::BaseClassVirtual(const BaseClassVirtual& other)
|
||||
{
|
||||
}
|
||||
|
||||
int BaseClassVirtual::virtualCallRetInt(BaseClassVirtual* base)
|
||||
{
|
||||
return base->retInt();
|
||||
|
@ -72,10 +56,6 @@ const char* BaseClassVirtual::getTypeName()
|
|||
return typeid(BaseClassVirtual).name();
|
||||
}
|
||||
|
||||
DerivedClassVirtual::DerivedClassVirtual()
|
||||
{
|
||||
}
|
||||
|
||||
int DerivedClassVirtual::retInt()
|
||||
{
|
||||
return 10;
|
||||
|
|
|
@ -9,8 +9,6 @@ public:
|
|||
|
||||
};
|
||||
|
||||
Foo();
|
||||
~Foo();
|
||||
virtual int vfoo();
|
||||
virtual int vbar();
|
||||
|
||||
|
@ -25,8 +23,6 @@ DLL_API int FooCallFoo(Foo* foo);
|
|||
class DLL_API BaseClassVirtual
|
||||
{
|
||||
public:
|
||||
BaseClassVirtual();
|
||||
BaseClassVirtual(const BaseClassVirtual& other);
|
||||
static int virtualCallRetInt(BaseClassVirtual* base);
|
||||
virtual int retInt();
|
||||
static BaseClassVirtual getBase();
|
||||
|
@ -37,6 +33,5 @@ public:
|
|||
class DLL_API DerivedClassVirtual : public BaseClassVirtual
|
||||
{
|
||||
public:
|
||||
DerivedClassVirtual();
|
||||
virtual int retInt() override;
|
||||
};
|
||||
|
|
Загрузка…
Ссылка в новой задаче