Dimitar Dobrev
926fca6087
Simplify ClangParser by making it static
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
6 years ago
Dimitar Dobrev
fbbda2020f
Remove the direct usages of the parsing options
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
6 years ago
Dimitar Dobrev
b4726fd48e
Don't add ABI-specific parameters when wrapping C
...
Fixes https://github.com/mono/CppSharp/issues/1008 .
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
6 years ago
Dimitar Dobrev
28a5c5d76c
Prioritize public non-field properties when resolving naming conflicts
...
Fixes https://github.com/mono/CppSharp/issues/1175 .
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
6 years ago
Dimitar Dobrev
4d8ab83328
Fix patching of virtual tables for MSVC with RTTI
...
Fixes https://github.com/mono/CppSharp/issues/1151 .
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
6 years ago
Dimitar Dobrev
076318be29
Free the memory of the patched v-tables
...
Fixes https://github.com/mono/CppSharp/issues/586 .
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
6 years ago
Dimitar Dobrev
b7fa720ee1
Generate valid C# for constructors taking const&
...
Fixes https://github.com/mono/CppSharp/issues/1119 .
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
6 years ago
Dimitar Dobrev
6dcb2ac31a
Generate valid C# for returned function pointers
...
Fixes https://github.com/mono/CppSharp/issues/1226 .
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
6 years ago
Dimitar Dobrev
a1ddbd82d7
Expose returned values of non-void setters
...
Now we generate them as methods too.
Fixes https://github.com/mono/CppSharp/issues/960 .
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
6 years ago
Dimitar Dobrev
dcd11e9433
Ensure enumerations lack conflicts when renamed
...
Fixes https://github.com/mono/CppSharp/issues/965 .
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
6 years ago
Dimitar Dobrev
2acbf32a96
Fix generation for fields of type const reference
...
Fixes https://github.com/mono/CppSharp/issues/1323 .
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
6 years ago
Ali Alamiri
fe33488829
Option to allow caller to specify it does not want unchanged output files to be modified. This supports incremental build in VS. ( #1373 )
...
Check if generated code is different to existing files and only overwrite if so
Co-authored-by: Build Agent <admin@sage.com>
6 years ago
Build Agent
e31dc22ab1
CreateInstance factory overload to pass flag informing wrapper if it should own the native pointer passed to it.
6 years ago
Dimitar Dobrev
081ac688f4
Simplify the mapping of virtual tables in C#
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
6 years ago
Dimitar Dobrev
09222174c1
Made the original virtual tables static too
...
Virtual tables are the same object per class in C++.
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
6 years ago
Dimitar Dobrev
0da9c46a73
Pass native pointers to bases in the generated C#
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
6 years ago
Dimitar Dobrev
c214b10e3c
Check type maps when printing C++ for pointers
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
6 years ago
Dimitar Dobrev
bcdc2cf667
Fix leaking the memory of an entire Clang AST
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
6 years ago
Dimitar Dobrev
d0216f1e7d
Ignore type maps when printing C++ for symbols
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
6 years ago
João Matos
6a9d829698
Implement more accurate managed type printing in C++ type printer.
6 years ago
João Matos
2a7d7fa469
Use a native type printer context when looking for type maps in CSharpSourcesExtensions.DisableTypeMap.
6 years ago
João Matos
63c42c3252
Use explicit type printer when printing types in C# GenerateMethodSpecifier.
6 years ago
João Matos
9ba53acc11
Refactor CodeGenerator.GenerateMethodSpecifier to allow explicit specifier kind.
6 years ago
João Matos
f49e6c9e64
Do not check declaration access for explicitly generated declarations.
6 years ago
João Matos
55365c7d30
Ignore implicitly deleted copy constructor methods.
6 years ago
Ali Alamiri
29adf57f83
Correctly marshal constant arrays in C++/CLI ( #1346 )
...
Co-authored-by: Build Agent <admin@sage.com>
6 years ago
Ali Alamiri
c23ef39bca
Marshal pointer to primitive typedefs in C++/CLI ( #1355 )
...
Co-authored-by: Build Agent <admin@sage.com>
6 years ago
Dimitar Dobrev
116ee82212
Fix a regression when renaming classes
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
6 years ago
Dimitar Dobrev
54c6159f35
Fix naming conflicts with nested types and members
...
Fixes https://github.com/mono/CppSharp/issues/1353 .
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
6 years ago
Dimitar Dobrev
64b1efd1e7
Generate valid C# for parameters typedef-ed to mapped types
...
Fixes https://github.com/mono/CppSharp/issues/1256 .
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
6 years ago
Dimitar Dobrev
6fd9078445
Fix the regressed C# marshalling of char*
...
Fixes https://github.com/mono/CppSharp/issues/1258 .
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
6 years ago
Ali Alamiri
e0b8b58836
Handle pointer to pointer param ( #1343 )
...
Generate valid C++/CLI for passed pointers to pointers
Co-authored-by: Build Agent <admin@sage.com>
6 years ago
Ali Alamiri
190cbfa2d3
Handle returned pointers to std::vector in C++/CLI
...
Co-authored-by: Build Agent <admin@sage.com>
6 years ago
Dimitar Dobrev
7b6fb6e340
Implement abstract templates to call virtuals
...
This allows for, just as with regular classes, the calling of virtual methods of abstract templates returned by functions.
Fixes https://github.com/mono/CppSharp/issues/1270 .
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
6 years ago
Dimitar Dobrev
4e30a41ee8
Correctly align printed information for debugging
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
6 years ago
Dimitar Dobrev
c23bc89f86
Clean all warnings in the non-generated C#
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
6 years ago
Dimitar Dobrev
653f4cc287
Generate by ref parameters of type a pointer to enum
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
6 years ago
Ali Alamiri
eb838be70f
Use UnsupportedType description for type name instead of empty string ( #1339 )
...
Use UnsupportedType description for type name instead of empty string
6 years ago
Dimitar Dobrev
7fc681a41d
Ensure complete template specializations in AST
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
6 years ago
João Matos
2fb1376c4f
Add an option and checking for generation of deprecated declarations.
6 years ago
João Matos
083bcd845c
Make sure we use a native type printer for symbols code generation.
6 years ago
João Matos
b091a0370a
Extract and rework type map finding code from VisitTagType in C++ type printer.
6 years ago
João Matos
c7db119d47
Fix marshaling for wchar_t in C++ generator mode.
6 years ago
João Matos
060432c2d9
Remove some dead code.
6 years ago
João Matos
daef4342c1
Fix generation of field property setters in C++ generator.
6 years ago
João Matos
23fab707b5
Fix FieldToProperty pass to ignore non-public properties in C++ generator.
6 years ago
João Matos
534acc564d
Fix declaration access for generated fields flattened from anonymous types.
6 years ago
João Matos
237b344f67
Change standard type maps to be more specific about its supported generators.
6 years ago
Ali Alamiri
32b83a3015
Generate forward ref header for enum defined inside a class in C++/CLI ( #1322 )
...
Co-authored-by: Build Agent <admin@sage.com>
6 years ago
Ali Alamiri
344656c787
Move the GenerateInclude logic to GetTypeReference ( #1319 )
...
Improve generation of forward references and includes in C++/CLI.
Move the GenerateInclude logic to GetTypeReference so that an include is also generated for visited types of an ASTRecord that are forward declared, and come from typedef of ignored class template.
Co-authored-by: Build Agent <admin@sage.com>
6 years ago