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
11 years ago
Dimitar Dobrev
f77d394eb1
Generated methods and variables of base classes of value types.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
11 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.
11 years ago
triton
af06f32fd5
Reworked static class support in CLI and C#.
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
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
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
Elias Holzer
325bca6082
CLI generator didn't respect static properties.
11 years ago
Elias Holzer
e6cb543c36
Fixed overloading of an indexed properties by removing the hard coded "int index" part.
11 years ago
triton
4a98f69df5
Added an explicit option to generate copy constructors.
11 years ago
triton
3c40442a13
Minor code formatting fixes.
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
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
triton
e95a2929a8
Fixed handling of property indexers in the CLI generator.
11 years ago
Øystein Krog
d3e963ff19
Move helper methods in Type out from class and into extension class TypeExtensions
11 years ago
triton
8e9d4f9c31
Fixed generation of copy constructors for CLI value types.
12 years ago
triton
0a102d8fbc
Added better wrapping for static classes.
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
triton
74007bedd1
Fixed wrong indenting in output by using the block API for fields.
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
d49a1eedb1
Use the existing instance identifier constant in the CLI backend to match the C# generator.
12 years ago
triton
6edfe6599e
Fixed generation regression leading to unnecessary access specifiers in some cases.
...
This was introduced in PR151 (Field properties).
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
triton
d09d2e9cf6
Simplified the property generation code.
12 years ago
triton
61dc4960f8
Added explicit constraint support to the experimental function templates generation.
12 years ago
triton
3a74428f94
Fixed delegate generation regression and added some tests.
12 years ago
triton
dbac9e36fa
Fixed the generator to use blocks for templates and variables.
...
Fixes wrong whitespace between those declarations.
12 years ago
triton
a1c4885610
Fixed the output of forward references in CLI headers.
...
We now use a sorted set to prevent duplicated references and have a stable ordering.
12 years ago
triton
4289633dcf
Fixed CLI newline behavior for some declarations.
12 years ago
triton
e835d5086a
Remove useless code.
12 years ago
triton
b808117566
Cleaned up the default diagnostics output to be more concise.
12 years ago
triton
1133b6c935
Fixed delegate generation problem.
12 years ago
triton
fed9031775
Fixed support for C++ conversion operators.
12 years ago
Stephen Kennedy
0957843c4d
Unify debugging output
...
Route all debugging output through Driver.Diagnostics
12 years ago
triton
565d73a4d0
Fixed CLI type references to work correctly with library namespaces.
12 years ago
triton
b91ac99576
Reworked the CLI type references collector and generation code.
...
We now properly handle type references to namespaces that do not exist in the referencing translation unit. We do this by collecting all the references for all namespaces in the translation unit and generate a block with all the forward references.
12 years ago
triton
c0c212928d
Reworked CLI type references to only filter namespaces only filter (effective) namespaces when generating forward references and not includes.
12 years ago
triton
18b1515412
Fixed generation of unions.
12 years ago
triton
c7b7e2c703
Fixed generation of nested declarations in classes.
12 years ago
triton
fb00f8e7b5
Improved the CLI include collector to keep track of originating translation units.
12 years ago
triton
2981c497dc
Remove extra newline from the output.
12 years ago