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
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
triton
cf9df7330e
Fixed more declarations to define their members at global scope.
11 years ago
triton
36230fc667
Fixed more declarations to define their members at global scope.
11 years ago
triton
69b8b6e6d0
Move the definitions to the header again, but provide them at global scope.
...
This should fix the previous problem too, and keeps related declarations/definitions together.
11 years ago
triton
a33277f233
Moved some tests definitions from the header to the source file.
11 years ago
triton
341140b929
Factor DLL API macros into its own shared header for tests.
11 years ago
triton
d6c2004ca4
Comment this test since it's not reproducible between platforms.
...
Specifically, on OSX it's generating `2147483648`, while it generates `-2147483648` on VS. I've tried to get down to the cause and Clang itself returns different values on both platforms, even though the compiler seems to deduce the same signed 32-bit integer on both platforms.
11 years ago
Elias Holzer
15f1394aaf
The extension method Type.IsPointerTo<T> will take attributed types into account.
...
Fixed generation of attributed delegate types in my case.
11 years ago
triton
9166a55202
Fixed generation of properties to behave as expected.
...
Fixed this by changing GenerateProperties to use GetterSetterToPropertyPass instead of GetterSetterToPropertyAdvancedPass.
Fixes issue #215 .
11 years ago
triton
d68b7b3b56
Fixed code generation for enum pointers as parameters.
...
Fixes issue #217 .
11 years ago
Elias Holzer
f091c6662a
CLI generator will use the pointee type for indexed properties which have a setter.
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
Elias Holzer
172f8fbf5d
Ignore function types to non-static member functions.
11 years ago
triton
9c07283ff0
Fixed CLI getter/setter property generation (with tests).
11 years ago
triton
ee6baa38dd
Fixed code generation for global functions (and added a test).
11 years ago
triton
46f92e30d0
Fixed the remaining tests from the pull request.
11 years ago
triton
e95a2929a8
Fixed handling of property indexers in the CLI generator.
11 years ago
Elias Holzer
cff1349d2c
Fixed retrieval of method overloads in case the provided function is an operator.
11 years ago
Elias Holzer
7596ea4b0e
Put abstract implementations in the proper namespace.
11 years ago
Elias Holzer
55bbba46dd
Desugar a type to test whether it is primitive or not.
11 years ago
Elias Holzer
fd0cabb8eb
Desugar a type to test whether or not it is a tag declaration.
11 years ago
Elias Holzer
ba03f64f65
Do not write the fixed keyword multiple times for nested array types.
11 years ago
Elias Holzer
a115bd9a51
Overload comparison operators only if their native counterpart return bool.
11 years ago
Dimitar Dobrev
ccc1608a81
Fixed a regression in the new parser causing a crash on enums with empty names.
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>
12 years ago
Dimitar Dobrev
7477b90023
Moved the tests for copy ctors to separate classes.
...
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
8d9ff9515e
Generated dependent fields if they are of a union type.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
99849da1d1
Added preliminary support for char16 to avoid crashes because of null parameter types.
...
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
triton
0a102d8fbc
Added better wrapping for static classes.
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
819df6a2a2
Fixed CLI generation with references to pointers types (added a test).
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
df4391a340
Added a test for unions.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
triton
22b6a3c11f
Use GenerateInternalFunctionCall when generating class constructors.
...
Fixes #149 .
12 years ago
Dimitar Dobrev
c853db5d34
Ignored operators which cannot be moved to a class because C# requires operators to be in their containing type.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
triton
a8c6e1f140
Fixed a problem with class operators not being correctly promoted to class operators.
...
We need to check all the parameters for a possible class to promote the operators.
12 years ago
triton
3a74428f94
Fixed delegate generation regression and added some tests.
12 years ago
triton
b5e947881b
Fixed the generation of 'ToInternal' to check for null only fields of a ref type.
...
Part of the patch by @ddobrev .
12 years ago
Dimitar Dobrev
d583b489a3
Fixed the returning of empty values when the returned type is a structure.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
06b83ee3fc
Changed the generation of method bodies to avoid duplication of local variables when a fixed instance is required.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
triton
8135983b58
Formatting fixes.
12 years ago
triton
6bf0ae980c
Changed attributed types test to be CLI-only for now since Clang currently fails with some mangling bugs.
12 years ago
triton
6402c3ca55
Added support for C++ attributed types to the parser, AST ,generators and tests.
12 years ago
Dimitar Dobrev
3cf6c7b3f1
Added a test for the pass that moves functions to a class.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
2b77361d89
Reverted the hack about filling the empty names of parameters explicitly for function types. Added tests for this regression and another one caused by the changed around the introduction of FunctionType.Arguments.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago