Dimitar Dobrev
e2690ba078
Switched the C# generator from manual conversion between strings and pointers to the built-in string marshallers.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
9 years ago
Dimitar Dobrev
e36e7fc0ca
Ignored fields with types pointer to a function because they are not properly marshalled anyway.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
9 years ago
Joao Matos
62ab990b63
Formatting fixes.
9 years ago
Joao Matos
013a9e8b4c
Merged IgnoreAbstractOperatorsPass into CheckOperatorsOverloadsPass and added a test.
9 years ago
Dimitar Dobrev
fbd1f5e328
Optimised, simplified and fixed the pass for renaming by case.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
9 years ago
Joao Matos
857b25db2f
Simplified some code.
9 years ago
Dimitar Dobrev
5b52075d32
Fixed the generated usages of internals of template specialisations with dependent fields.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
9 years ago
Dimitar Dobrev
dab3f9fb31
Included some basic STD types in the helping library with system templates.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
9 years ago
Dimitar Dobrev
2480a551b5
Removed unsupported template specialisations from the generated C++ library with templates.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
9 years ago
Dimitar Dobrev
7d6f344324
Improved the default names of libraries for inlines and template specialisations.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
9 years ago
Dimitar Dobrev
3230f9037f
Minor fixes to handling arrays and std::string.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
9 years ago
Dimitar Dobrev
a4dfeb94be
Moved the marking of supported template specialisations to a pass.
...
This allows custom passes to add other specialisations to support.
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
9 years ago
Dimitar Dobrev
aabe7409d1
Fixed the internals of templates specialising arrays by simplifying the names.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
9 years ago
Dimitar Dobrev
589cb6b0df
Disabled the type maps for va_list and std::list in the C# generator.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
9 years ago
Dimitar Dobrev
6596d638ff
Fixed the type map for std::string to also destroy the allocator.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
9 years ago
Dimitar Dobrev
deea8d8cda
Removed functions made ambiguous by different qualifiers on the same type in their parameter.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
9 years ago
Dimitar Dobrev
d419cb7156
Added all system fields to the internal layouts used in the C# generator.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
9 years ago
Dimitar Dobrev
1771f7462b
Fixed the generation of internals for nested template specialisations with pointers as T.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
9 years ago
Dimitar Dobrev
fa086e086c
Ensured __int128, __uint128_t and __fp16 are ignored without crashing in the C# generator.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
9 years ago
Dimitar Dobrev
13b5423fff
Fixed the printing of template specialisations to work in all cases.
...
The previous implementation worked with template specialisation types but not, for example, with template parameter substitution types.
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
9 years ago
Dimitar Dobrev
5a4748f2d0
Handled two or more empty enums with identically prefixed members and in the same context.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
9 years ago
Dimitar Dobrev
1dd73afda6
Fixed a crash when checking specialisations of std::vector.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
9 years ago
Dimitar Dobrev
7d67f4b023
Added unary transformations and other fixes to restore the full build with all tests.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
9 years ago
Dimitar Dobrev
397d82b2a1
Fixed the generated C# when having a field of type char*.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
9 years ago
Dimitar Dobrev
2b3b9bc9cf
Fixed a crash when parsing templates of variables.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
9 years ago
Joao Matos
b7689b2d60
Added support for missing basic Clang built-in types.
9 years ago
Joao Matos
09a9d17efb
Moved type printing functionality to CppSharp.AST.
9 years ago
Joao Matos
1206b48776
Improved debugging representation of template arguments and specializations.
9 years ago
Joao Matos
4b1309f5be
Added support for C++14 variable templates and specializations.
9 years ago
Joao Matos
53409db5ca
Re-generated the parser bindings.
9 years ago
Joao Matos
2bac142976
Added VisitFunctionTemplateSpecializationDecl visitor implementations.
9 years ago
Joao Matos
12312bff14
Refactored common template handling code in native AST.
9 years ago
Joao Matos
4b8bb474fa
Clean up template declarations visiting behavior.
9 years ago
Dimitar Dobrev
d41609eafb
Marked incomplete class template specialisations and ignored them later.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
9 years ago
Dimitar Dobrev
7b78053f93
Added compatibility with a little newer Clang.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
9 years ago
Joao Matos
9c56b56b68
Rename CLITextTemplate to CLITemplate.
9 years ago
Joao Matos
573dc623f8
Renamed class names to match file renames.
9 years ago
Joao Matos
f6355ab0f9
Renamed some files.
9 years ago
Joao Matos
3f33124287
Re-factored Clang builtin include directory build script code.
9 years ago
João Matos
d03dc8013a
Remove workarounds due to improper handling of Clang builtin include dirs.
9 years ago
João Matos
e5a667afc3
Copy the bundled Clang builtin include files folder to the build folder.
9 years ago
Joao Matos
ab3660cc02
Skip walking implicit C++ records.
9 years ago
Nathan Loofbourrow
d168496cbf
Changes to match clang 3.8.1 API changes
9 years ago
Dimitar Dobrev
b77d2ccdde
Ensured the system module only contains units from the current run.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
9 years ago
Dimitar Dobrev
91c0a38296
Improved the searching for type maps to work with typedefs and selected mapped template specialisations.
...
This makes it possible to map the exact specialisation of basic_string which corresponds to std::string.
This helps when std::string is used as a placeholder (std::vector<std::string>) since it's then finally resolved to the specialisation and not the typedef.
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
9 years ago
Dimitar Dobrev
87fe62721c
Deleted the redundant and incomplete manual attempts for marshalling std types.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
9 years ago
Dimitar Dobrev
0837094d76
Fixed the generated C# code when a default arg with an ignored expression is preceded by another default arg.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
9 years ago
Dimitar Dobrev
9d940c8f51
Removed default parameters when they use ignored declarations.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
9 years ago
Dimitar Dobrev
6a0069f9c2
Fixed invalid C# code when wrapping a constant of type std::string.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
9 years ago
Dimitar Dobrev
5fa6fcca19
Fixed the system module linking itself when auto-compiling.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
9 years ago