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
6145bf600b
Do not generate the destructor/finalizer pair if the destructor of the native class is protected.
...
Had to fix line endings (LF) in the CLI* files.
11 years ago
Elias Holzer
911ce43e07
Use List<IntPtr> when mapping a std::vector<T*> where T is a primitive type.
...
Pointers are not allowed in generic arguments.
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
dcbf34b8e2
Add special marshaling attribute to delegate declaration if calling convention differs.
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
94eda74596
Removed non generated headers from includes collected.
11 years ago
marcos henrich
7794e52103
Fixed QualifiedIdentifier when QualifiedName is empty (case of namespaces)
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
triton
c7dba1b5bd
Fixed type map matching regression introduced in d68b7b3
.
...
Thanks to Elias Holzer for reporting the issue.
Conflicts:
src/Generator/Generators/CLI/CLITypePrinter.cs
11 years ago
Elias Holzer
325bca6082
CLI generator didn't respect static properties.
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
d68b7b3b56
Fixed code generation for enum pointers as parameters.
...
Fixes issue #217 .
11 years ago
Elias Holzer
570f13112b
Fixed issue with const pointer.
11 years ago
Elias Holzer
e6cb543c36
Fixed overloading of an indexed properties by removing the hard coded "int index" part.
11 years ago
Elias Holzer
d8b855bfe6
Fixed handling of primitive pointer types.
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
9c07283ff0
Fixed CLI getter/setter property generation (with tests).
11 years ago
triton
2ebce723ae
Use SafeIdentifier when writing parameter names in the C# marshaller.
...
TODO: There are still lots of instances in the marshaller where we do not do this. We should instead clean the parameter/declaration names before entering generation.
11 years ago
triton
5e0cd3112a
Fixed marshaling of wide characters in the C# backend.
11 years ago
triton
fec8b00d8e
Added marshaling of function types to C# backend.
11 years ago
triton
3c40442a13
Minor code formatting fixes.
11 years ago
triton
ee6baa38dd
Fixed code generation for global functions (and added a test).
11 years ago
marcos henrich
c57ceb86c1
The name of the class containing static methods generated from C++ functions is no longer based on the option OutputNamespace.
11 years ago
marcos henrich
56f772a8c8
UseHeaderDirectories when true generated files will be outputted to original relative paths, and include will use relative path between headers. When NoGenIncludePrefix is set a string is prepended to the include files that are not generated.
11 years ago
marcos henrich
5484758507
Added DriverOptions to CLITypeReferenceCollector.
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
marcos henrich
afde77e968
Refactored multiple similar foreach loops to a simpler version.
11 years ago
marcos henrich
734fe3348d
GenerateClassFields is now always called even when the current class has no fields because fields of a value type base class must generated.
11 years ago
marcos henrich
b28ac8b304
Added delegate CheckGenerate that is called before on generate so the block text generation can be empty when needed.
11 years ago
marcos henrich
3237a7b421
Template method PopBlock now returns the active block.
11 years ago
marcos henrich
c061cf5be4
Added property IsEmpty to Block.
11 years ago
triton
e95a2929a8
Fixed handling of property indexers in the CLI generator.
11 years ago
triton
5b15b27312
Fixed CLI marshaling to take typedefs into account when handling pointer to primitive types.
11 years ago
Elias Holzer
ba03f64f65
Do not write the fixed keyword multiple times for nested array types.
11 years ago
triton
21efb8fc83
Fixed a bug by removing this weird looking code from the C# marshaller.
...
The test suite still passes too.
11 years ago
triton
08255907de
Fixed C# and CLI backends to check for null values when marshaling classes.
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
065b8054b2
Add PrimitiveType.UIntPtr in AST and code generators
12 years ago
Øystein Krog
d3e963ff19
Move helper methods in Type out from class and into extension class TypeExtensions
12 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>
12 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>
12 years ago
triton
8e9d4f9c31
Fixed generation of copy constructors for CLI value types.
12 years ago
Dimitar Dobrev
fee1809ca5
Wrapped copy constructors.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago