triton
af06f32fd5
Reworked static class support in CLI and C#.
11 years ago
marcos henrich
3e3e605a26
Declaration.IsInternal is no longer true when Declaration.GenerationKind is Generate.
11 years ago
marcos henrich
b5fc658888
CheckIgnoreField now properly handles internal fields.
11 years ago
marcos henrich
20b9f5df52
Replaced some IsGenerated by IsInternal.
11 years ago
marcos henrich
de764599fa
Separated IsTagDecl into TryGetClass and TryGetEnum, added IsClass() and IsEnum().
11 years ago
Elias Holzer
0c260bd223
Improved support for indexed properties.
...
More types and types with different qualifiers are supported now - in both backends. See test cases for details.
11 years ago
Elias Holzer
cc3cc40fc4
When generating delegates attributed types need to be taken into account or proper calling convention won't get picked up.
11 years ago
Elias Holzer
2736088957
CSharp and CLI backend use same function to convert the calling convention.
11 years ago
Elias Holzer
474f82b513
Added support for explicit conversion operators and added new pass which will create implicit and explicit conversion operators out of single argument constructors.
...
Conflicts:
src/Generator/Passes/CheckAmbiguousFunctions.cs
src/Generator/Passes/CheckOperatorsOverloads.cs
11 years ago
marcos henrich
0300f45c1b
Replaced usage of «IsGenerated with IsDeclared when handling with base classes and value types properties.
11 years ago
marcos henrich
3f96bdbfe3
Replaced declaration IgnoreFlags by GenerationKind. Added methods IsInternal and IsDeclared to declaration. Replaced IsGenerated = true by GeneratioKind = GeneratioKind.Internal. Deprecated Ignore, replace Ignore set by ExplicityIgnored, replace Ignore get by IsGenerated, IsInternal or IsDeclared.
...
Conflicts:
src/Generator/Passes/CheckOperatorsOverloads.cs
11 years ago
João Matos
ab5e7a3a8b
Fixed vtable generation for the Itanium case.
11 years ago
Elias Holzer
3144976349
Removed unnecessary Desugar() calls when testing whether or not a type is primitive.
...
The extension method IsPrimitiveType does the desugaring - see 55bbba46dd
.
11 years ago
triton
4a98f69df5
Added an explicit option to generate copy constructors.
11 years ago
triton
a6bd803a71
Fixed code generation for Itanium ABI instance/indirect return types methods in C#.
11 years ago
triton
ee6baa38dd
Fixed code generation for global functions (and added a test).
11 years ago
marcos henrich
ec93889b64
Using property ExplicitlyIgnore instead of Ignore, so types that are not referenced can still be referenced.
11 years ago
triton
7faa50d945
Fixed native symbol naming.
...
We now properly name the internal ctor declarations by constructor type.
We also now keep an index for each function that is used to unique their native name.
11 years ago
Øystein Krog
d3e963ff19
Move helper methods in Type out from class and into extension class TypeExtensions
11 years ago
Dimitar Dobrev
72089a499e
Marshalled C++ char as Mono/.NET char instead of sbyte for a more friendly API.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
11 years ago
Dimitar Dobrev
556e91554f
Ignored protected members of value types. Used a constant for the instance identifier to improve performance.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
11 years ago
Dimitar Dobrev
fee1809ca5
Wrapped copy constructors.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
11 years ago
Dimitar Dobrev
24a8db6a32
Fixed the generation of internal implementations of abstract classes to actually work.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
11 years ago
Dimitar Dobrev
2e2f277b30
Ensured the internals of mapped classes are generated.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
11 years ago
Dimitar Dobrev
8d9ff9515e
Generated dependent fields if they are of a union type.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
11 years ago
Dimitar Dobrev
648e47570d
Checked for symbols before calling destructors.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
11 years ago
Dimitar Dobrev
11ef53df10
Generated all internals of all (including ignored) classes and all of their fields in order to properly store objects in managed code.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
11 years ago
Dimitar Dobrev
85e56de487
Applied Helpers.SafeIdentifier in the name-cleaning pass in order to get correct names in type maps.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
11 years ago
Øystein Krog
663c91e443
Add support for fields with expressions (values) in CSharpTextTemplate
11 years ago
Øystein Krog
df7c1371a6
Pass in an CSharpExpressionPrinter instance to CSharpTextTemplate
11 years ago
Dimitar Dobrev
59e0fb9ede
Generated correct v-tables when using the Itanium ABI.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
11 years ago
gpetrou
1ec9686111
Added default option to avoid generating ICppMarshal interface in the output files.
11 years ago
Dimitar Dobrev
cfeed2619a
Extended type maps with the ability to insert custom code instead of a copy ctor invocation.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
4c5d933cd2
Added support for marshalling arrays of pointers to primitives.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
triton
76cf4e68d8
Simplify declaration ignores by removing IsProcessed and fixing ExplicitlyIgnored to be recursive like the others ignore properties.
12 years ago
Øystein Krog
c191d0b337
Add new option (DependentNameSpaces) that allows for specifying custom using statements/namespaces in generated units
12 years ago
Dimitar Dobrev
e1a12027ec
Wrapped value typed fields with properties in order to have changes reflected to the native pointer.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
triton
a58bf5b81b
Changed the visibility of native constructor to public (to match the CLI backend).
12 years ago
triton
0f76dc0090
Added experimental destructors/finalizers support.
...
This has exposed some underlying bugs on some pieces of generated code, so I've put it under an option temporarily.
Fixes #148 .
12 years ago
Dimitar Dobrev
9686187eb1
Wrapped properties of non-primitive value types as fields.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
b47fa98c94
Fixed a regression when marshalling arrays. Migrated the C++/CLI back-end to property usage.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
aa5b66a4ab
Wrapped fields of structures with properties.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
triton
0954ad0c7e
Fixed destructors by keeping track when they are non-trivial.
12 years ago
triton
22b6a3c11f
Use GenerateInternalFunctionCall when generating class constructors.
...
Fixes #149 .
12 years ago
triton
51bff527e3
Fixed native function mangling scheme.
12 years ago
triton
3fd94bf482
Added better support for destructors.
...
Also changed the native identifier mangling scheme to add some shorthand for the type of special method. This makes it simpler to read through the generated binding code.
Hopefully fixes #142 .
12 years ago
triton
3a3f405fa9
Fixed wrong property setter type for some declarations.
...
Some operators, like operator[], actually need the getter return type.
12 years ago
triton
72aa09009d
Fixed a C# generation crash with set-only properties.
...
We cannot use the getter return type because it might not exist (setter-only property). Use the setter's first (and only) parameter return type instead.
12 years ago
triton
52cf3702a6
Minor formatting fixes.
12 years ago
triton
7037c3dd4b
Whitespace cleanups.
12 years ago