josetr
37bd7e0155
Add `GenerateNativeToManaged` per-class option
3 years ago
josetr
3414294ab8
Fix FunctionToStaticMethod bug
3 years ago
josetr
27d9adb20c
Remove duplicate IsNativeMethod functions
3 years ago
Joao Matos
314a1f745f
Parse generate function template specializations.
3 years ago
josetr
b024a92570
Use `PushWriteBlock` to improve code readability
3 years ago
josetr
2792600efb
Rename LibrarySymbolInfo to CSharpLibrarySymbolTable and improve it a bit
3 years ago
josetr
69925a56e1
Improve IsPrimitiveTypeConvertibleToRef() performance
3 years ago
josetr
eb5031bf4c
Format files
3 years ago
josetr
fd3f82a7a1
Fix AccessViolationException error when using deduction guides
3 years ago
josetr
7e825c4dd3
Add LanguageVersion.CPP23
3 years ago
Ahmed Elsayed
c281f57b52
Add Experimental Initial Span ( #1651 )
...
* Fix NotImplementedException
* Add Experimental Span
* Fix Some Problems and Comment
3 years ago
Ahmed Elsayed
158a58654a
Fix NotImplementedException ( #1650 )
3 years ago
Joe Hull
1edd5ee5ee
Avoid ArgumentOutOfRangeException in ExpressionHelper.CheckForString ( #1649 )
3 years ago
Joe Hull
81351632d5
Use WeakReference<T> in NativeToManagedMap to allow finalizers to run. ( #1648 )
3 years ago
Dimitar Dobrev
740f30e816
Remove redundant spaces in the generated C++
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
4 years ago
焼き猫
318d145006
Add options.LibraryDirs to module in Generator.cs ( #1646 )
4 years ago
Dimitar Dobrev
b3d32d8c71
Update LLVM to a newer version
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
4 years ago
Dimitar Dobrev
1acb23813d
Generate valid C# for independent specialisations with nested fields
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
4 years ago
Dimitar Dobrev
ab04635314
Don't revisit parameters when checking to ignore
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
4 years ago
Dimitar Dobrev
f1915b3066
Generate valid C# for templates with external specializations only
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
4 years ago
Dimitar Dobrev
9b90f1c77b
Generate valid C# for nested in external specializations
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
4 years ago
Dimitar Dobrev
c84a6c606e
Generate valid C# for independent external specializations
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
4 years ago
Dimitar Dobrev
3b0eb1800c
Generate valid C# for nested external specializations
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
4 years ago
Dimitar Dobrev
aab63d0aa3
Generate valid C# for unresolvable base templates
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
4 years ago
Dimitar Dobrev
69e766be5d
Generate valid C# for classes with dependent fields nested in templates with independent fields
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
4 years ago
Dimitar Dobrev
f44686bda0
Generate valid C++ for redeclaration of friends
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
4 years ago
Dimitar Dobrev
a69f6d1d6d
Generate valid C++ for specialisations with void
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
4 years ago
Dimitar Dobrev
dddd5da0e6
Update LLVM to the latest version
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
4 years ago
Dimitar Dobrev
5552f2b484
Generate valid C# for pure functions returning or taking dependent pointers
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
4 years ago
Ahmed Elsayed
caaf89d34a
Fix a crash when processing templates with variable arguments ( #1641 )
4 years ago
Dimitar Dobrev
0d84877068
Simplify code by not specially handling void**
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
4 years ago
Dimitar Dobrev
25e983606e
Report errors when linking of generated C++ fails
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
4 years ago
Dimitar Dobrev
b2cc4ab913
Ensure complete classes in class templates
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
4 years ago
Dimitar Dobrev
365b8db71c
Print C++ for some kinds of non-type template parameters
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
4 years ago
Dimitar Dobrev
da251d443b
Always ignore functions returning unsupported specializations
...
In very complex headers with heavily typedef-ed returned specializations of templates with non-type template parameters the functions themselves can be visited before such templates - thus leaving such invalid functions as valid.
Unfortunately, such a complex interaction cannot be reproduced and therefore tested in a reasonable time-frame.
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
4 years ago
Dimitar Dobrev
634c231853
Generate valid C# for unions in templates with non-type args
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
4 years ago
Dimitar Dobrev
3ae0fd0fd5
Match names of parameters in templates to their specializations
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
4 years ago
Dimitar Dobrev
0214b6e1cc
Work around adding an STD name-space to a custom header
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
4 years ago
Dimitar Dobrev
0b8f252d1b
Generate valid C# for fields with types system template specializations
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
4 years ago
Dimitar Dobrev
ad6557792f
Simplify handling of initialisation of variables
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
4 years ago
Dimitar Dobrev
d9394cd5df
Auto-link generated C++ with the new LLD Mach-O
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
4 years ago
Dimitar Dobrev
132ed7e25b
Generate valid C# for variables which use float
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
4 years ago
Dimitar Dobrev
ac5001ddca
Generate valid C# for variables with > 1 arg
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
4 years ago
Dimitar Dobrev
9a17dbee1b
Generate valid C++ for variadic functions
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
4 years ago
Dimitar Dobrev
5e328da9e7
Fix C# layouts for classes with nameless unions
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
4 years ago
Dimitar Dobrev
5a21a7facd
Generate valid C# for copy ctors with extra args
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
4 years ago
Dimitar Dobrev
50cba5552c
Generate valid C# for destructors of templates with dependent fields
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
4 years ago
Dimitar Dobrev
ac8bbee379
Don't generate or move ignored specializations
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
4 years ago
Dimitar Dobrev
a2aeaed92a
Rename templates only used through aliases
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
4 years ago
Dimitar Dobrev
09190268bc
Generate valid C# for internal fields of type external specialization
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
4 years ago