Joe Hull
eb0d4c15f1
bug fix: When generating the get accessor for a field composed of an embedded array of structs use __GetOrCreateInstance to initialize the managed array wrapper rather than __CreateInstance so that __Instance holds a pointer to the memory allocated for the array in the outer struct rather than an independent copy of that memory.
...
Added a test.
TODO: once allocated, we may want to cache the managed array. Does this
issue exist in other generators as well?
5 years ago
Joe Hull
d135ffdb86
bug: Repaired broken alignment padding generation for structs with embedded arrays of structs. Added a test for this case.
5 years ago
ElonH
af275edb55
generate comment for field
5 years ago
Dimitar Dobrev
e2c81df194
Fix a regression when printing C++ methods
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years ago
Dimitar Dobrev
0ff9e14226
Update LLVM to the latest version
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years ago
Dimitar Dobrev
0e249d0986
Fix the regressed generation of C++ for variables
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years ago
Joao Matos
ee271371d3
Minor refactoring in CCodeGenerator.GetMethodIdentifier.
5 years ago
Joao Matos
c6e263e269
Add work-in-progress TypeScript interface bindings generator.
5 years ago
Joao Matos
28694431c7
C/C++ type printing fixes.
5 years ago
Joao Matos
0595fcfc9e
Add MarkEventsWithUniqueIdPass pass for global event handling.
5 years ago
Joao Matos
4deb35e272
Maintain DeclarationsList integrity by clearing item offsets.
5 years ago
Joao Matos
5004d9eada
Rework core implementation of QuickJS generator.
...
This adds more accurate overloading, default arguments handling and
events.
5 years ago
Joao Matos
720304ce0a
Implement two-step initialization for QuickJS.
5 years ago
Joao Matos
91c65c5515
Add QuickJS runtime project and initial features.
5 years ago
Joao Matos
cc15c23250
Improve support for default arguments in NAPI generator.
5 years ago
Joao Matos
494419de7b
Add support for generation of default argument expressions in C generator.
...
For now this only uses the C# code, needs some future work.
5 years ago
Joao Matos
f0becc879c
Add experimental GenerateExternalDataFields option and supporting code.
5 years ago
Joao Matos
19a88e3ad5
Minor refactoring fixes in CppTypePrinter.
5 years ago
Joao Matos
6671f56803
Add C code generator GenerateClassEvents for common event handling.
5 years ago
Joao Matos
eed362841c
Introduce a scope kind stack for type printers.
...
Just like we already have for other context data.
5 years ago
Joao Matos
57c9c48229
Rework C enum generation for more accurate handling.
5 years ago
Joao Matos
1e8db6020e
Add convenience constructor to ArrayType.
5 years ago
Joao Matos
2a8674c129
Create target directory when generating files.
5 years ago
Joao Matos
3746407f8e
Add new pass to convert C++ FastDelegate types into CppSharp delegates.
5 years ago
Joao Matos
50451ac897
Code cleanup.
5 years ago
Dimitar Dobrev
1e8bfb11e3
Remove looking MSVC headers up with COM
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years ago
Dimitar Dobrev
4f495181e5
Regenerate the parser bindings
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years ago
Dimitar Dobrev
2314b21093
Fix regressed names of generated source files
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years ago
Dimitar Dobrev
33e94b5f1f
Look for the Clang headers along the main entry
...
This fixes a crash in our new NuGet where the executable code we used as a guide before, is now located in nested arch-specific folders.
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years ago
Dimitar Dobrev
6d3f676db9
Regenerate the parser bindings
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years ago
Dimitar Dobrev
e913a00d11
Fix the crashing disposal of a non-set up driver
...
Fixes https://github.com/mono/CppSharp/issues/1404 .
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years ago
Matt Key
64ca939eb0
Refactoring to reduce code duplication
5 years ago
Matt Key
3fee9dd5b9
Adding test for new pass
5 years ago
Matt Key
6c57169bde
Adding extract interface pass
5 years ago
ElonH
79c927d329
Fixed alias of signed char cannot be marshaled
5 years ago
Dimitar Dobrev
fe1e7c4812
Fixed auto-building for projects at spaced paths
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years ago
Dimitar Dobrev
4181f7c534
Ignore the still unsupported dependent type names
...
They're difficult to resolve and this would only make sense if we support types nested in templates which we don't yet.
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years ago
Joao Matos
88fc5b9c36
Rewrite GenerateEnumFromMacros helper to also look into enum items.
5 years ago
Joao Matos
22448e09f4
Fix generation of overloads in NAPI by re-ordering final calculated states.
5 years ago
Joao Matos
b093fbe509
Fix marshaling of primitive types in NAPI generator.
5 years ago
Joao Matos
77972c78fa
Fix generation of operators in NAPI generator.
5 years ago
Joao Matos
06d271806d
Refactor and extract common code in NAPI source generator.
5 years ago
Joao Matos
1ddecb1dbd
Update expression evaluator code from latest upstream.
5 years ago
Joao Matos
bcc6fd887d
Improve visiting options implementation in CodeGenerator.
5 years ago
Joao Matos
1e9cff43c6
Clean multiline function signatures in the AST converter.
5 years ago
Joao Matos
39ce0255b5
Fix generation of text blocks using NewLineKind.IfNotEmpty.
5 years ago
Joao Matos
d6dd93d2f8
Minor code cleanups.
5 years ago
Dimitar Dobrev
c38556a93b
Make auto-compiling of C# work with .NET Core
...
CodeDom doesn't work in .NET Core (https://github.com/dotnet/runtime/issues/18768 ) and Roslyn turns out to be too low level (just a compiler and not a building framework) so the best approach is to invoke msbuild as a process.
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years ago
Dimitar Dobrev
8451cefc98
Change XML comments to be tested at run-time
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years ago
Dimitar Dobrev
86835469ac
Generate valid C++ for pointers in template args
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
5 years ago