Dimitar Dobrev
0e8a6e368c
Moved the code for creating a ref object by value from the marshalling printer to a valid ctor by value.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
01bc87bde9
Added a check for ignored ctors.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
65cac93259
Included ignored fields in the wrappers for better marshalling.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
d6d0d681c9
Fixed a compilation error when wrapping abstract destructors.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
db30cde06d
Handled indirect return params in type maps.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
a5b59f67f8
Fixed bugs with abstract properties in abstract impls.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
ef4be0b959
Fixed the generation of code in a single file.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
0499556bfe
Added support for default values of parameters.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
triton
1802470013
Kill the old parser (good riddance :).
12 years ago
Dimitar Dobrev
b1afea2251
Sealed private overrides.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
ca2b3a312e
Moved IsSynthetized from Method to Function.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
Conflicts:
src/AST/Method.cs
12 years ago
Dimitar Dobrev
840ce34552
Added an option to generate a single source file per extension.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
Conflicts:
src/Generator/Driver.cs
src/Generator/Options.cs
12 years ago
Dimitar Dobrev
f77d394eb1
Generated methods and variables of base classes of value types.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
e4b860c053
Fixed wrong code generated for indexers in value types.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
f88c20aa94
Some refactoring in preparation for the default values of parameters.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Tom Spilman
209aeafe76
Fixed InOut parameter bug where there was no space between the ref and the type.
12 years ago
Tomi Valkeinen
7289a06b9e
Rename PrimitiveType Int32 and UInt32 to Int and UInt
...
As enum PrimitiveType is supposed to represent C++ types, having Int32
and UInt32 there is not correct.
This patch renames those values to Int and UInt.
This doesn't change the behavior, but makes it clearer that the types
for 'int' and 'unsigned int' are not necessarily 32 bits.
12 years ago
Tomi Valkeinen
1cd9f0a16c
Remove PrimitiveTypes Int8 and UInt8
...
As enum PrimitiveType is supposed to represent C++ types, having Int8
and UInt8 there is not correct.
This patch removes those values. As Int8 and UInt8 were set to be
equivalent to Char and UChar, we can just change all references to Int8
and UInt8 to Char and UChar.
This doesn't change the behavior, but makes it clearer that the types
for 'char' and 'unsigned char' are not necessarily 8 bits.
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@iki.fi>
12 years ago
triton
ff6d9214dc
Improve error handling when looking for symbols with Options.CheckSymbols.
12 years ago
Tomi Valkeinen
480a06f260
Generator: Remove DriverOptions.Is32Bit
...
DriverOptions.Is32Bit is used to decide whether to use 4 or 8 byte
pointer size in VTable calculations.
Instead of having a settable Is32Bit property, use
TargetInfo.PointerWidth for this. This allows us to remove the whole
Is32Bit property, and the IS_64_BIT define.
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@iki.fi>
12 years ago
Tomi Valkeinen
4e185973e5
Normalize all the line endings
...
Normalized all the line endings with:
git rm --cached -r .
git reset --hard
git add .
git commit -m "Normalize all the line endings"
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@iki.fi>
12 years ago
triton
af06f32fd5
Reworked static class support in CLI and C#.
12 years ago
marcos henrich
3e3e605a26
Declaration.IsInternal is no longer true when Declaration.GenerationKind is Generate.
12 years ago
marcos henrich
b5fc658888
CheckIgnoreField now properly handles internal fields.
12 years ago
marcos henrich
20b9f5df52
Replaced some IsGenerated by IsInternal.
12 years ago
marcos henrich
de764599fa
Separated IsTagDecl into TryGetClass and TryGetEnum, added IsClass() and IsEnum().
12 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.
12 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.
12 years ago
Elias Holzer
2736088957
CSharp and CLI backend use same function to convert the calling convention.
12 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
12 years ago
marcos henrich
0300f45c1b
Replaced usage of «IsGenerated with IsDeclared when handling with base classes and value types properties.
12 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
12 years ago
João Matos
ab5e7a3a8b
Fixed vtable generation for the Itanium case.
12 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 .
12 years ago
triton
4a98f69df5
Added an explicit option to generate copy constructors.
12 years ago
triton
a6bd803a71
Fixed code generation for Itanium ABI instance/indirect return types methods in C#.
12 years ago
triton
ee6baa38dd
Fixed code generation for global functions (and added a test).
12 years ago
marcos henrich
ec93889b64
Using property ExplicitlyIgnore instead of Ignore, so types that are not referenced can still be referenced.
12 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.
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
Dimitar Dobrev
fee1809ca5
Wrapped copy constructors.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 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>
12 years ago
Dimitar Dobrev
2e2f277b30
Ensured the internals of mapped classes are generated.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
8d9ff9515e
Generated dependent fields if they are of a union type.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
648e47570d
Checked for symbols before calling destructors.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 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>
12 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>
12 years ago
Øystein Krog
663c91e443
Add support for fields with expressions (values) in CSharpTextTemplate
12 years ago