Dimitar Dobrev
478d475661
Wrapped pointers to primitives as such.
...
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
triton
c464635428
Fixed invalid declaration name cleaning to maintain proper ordering in events and function types.
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
triton
44e354d680
Remove useless default constructor from SortDeclarationsPass.
12 years ago
triton
45b110e739
Added arguments options support to pass custom Clang options to the parser.
12 years ago
triton
51f5e395ff
Fixed ObjectOverridesPass to use an updated instance identifier.
12 years ago
triton
1ceabd676c
Fixed declaration checking to have into account processing/generation ignore flags.
12 years ago
triton
1dec71e8f3
Added support for the CS_IGNORE_GEN macro to CheckMacrosPass.
...
This is used for classes that we want to ignore only for generation but still want to process when they appear in type maps.
12 years ago
triton
38009ce337
Fixed processing of classes in CheckMacrosPass.
...
We had previously added an early out for declaration contexts but this is not correct for classes since they need to have their preprocessed entities processed by the rest of the pass.
12 years ago
triton
1d0bfbcf70
Fixed processing of forward declarations in CheckMacrosPass.
12 years ago
triton
3849c0e0c0
Fixed type maps processing bugs.
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
80938b7937
Attempt to fix the tests by using a less broad fix for the unique names problem.
12 years ago
triton
c842d73243
Fixed invalid declaration name cleaning.
...
It could happen that by visiting the types of declarations, we'd wrongly reset the unique names counter. In this specific case, this was happening while visiting an event and its parameters.
12 years ago
triton
37bccb446d
Removed type map matching from VisitDeclaration.
...
We should only try to find type maps for types, else we can match type maps wrongly if the declaration name happens to have the same name as the one the type map tries to match on.
12 years ago
triton
819df6a2a2
Fixed CLI generation with references to pointers types (added a test).
12 years ago
Joao Matos
5016b485fe
Fixed FieldToPropertyPass to always visit complete class declaration.
12 years ago
Joao Matos
03f5998256
Fixed CopyClassFields helper to prefer complete declarations.
12 years ago
Joao Matos
db8c2cc99e
Fixed CheckMacroPass pass to work correctly for declaration contexts.
...
This has been broken since we started parsing preprocessed entities for all declarations. In the specific cases of declaration contexts (translation units and namespaces) we would be processing child declaration preprocessed entities and ignoring the whole contexts by mistake.
12 years ago
Joao Matos
3c27e0fad6
Improved generation of enumerations from macros.
...
We now keep track if a certain macro has already been generated in an enum and skip it in future calls to GenerateEnumFromMacros.
12 years ago
triton
8c0adad5f1
Fixed parsing bug and subsequent failing test in GenerateEnumFromMacros.
...
It now uses preprocessed entities instead of the soon-to-be-removed macros.
12 years ago
triton
3c7709e5cd
Fixed the C# generator to wrap void* as IntPtr.
12 years ago
triton
a58bf5b81b
Changed the visibility of native constructor to public (to match the CLI backend).
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
86c651625c
Added a new block policy to only generate a block if the following is not empty.
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
1b7947538a
Move all the testing infrastructure to CppSharp.Generator.Tests.
12 years ago
Joao Matos
b19cd1042e
Updated build scripts with OS X fixes and added some building documentation.
12 years ago
triton
c41d195b88
Improved the exception message for marshaling failures.
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
b58a99ebf3
Some fixes to the codebase to work correctly with the new parser bindings.
12 years ago
triton
8a54d30917
Fixed a bug in ASTRecord that made us infinitely recurse in some code.
...
Basically we should not visit a declaration if we are visiting from a type.
12 years ago
Dimitar Dobrev
227e592c1a
Improved the marshalling of arrays.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
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
52cf3702a6
Minor formatting fixes.
12 years ago
triton
df4fdeace8
Fixed access check logic for declarations to allow non-public declarations in C#.
...
Checking for the GenerateAbstractImpls option is flawed since they are not entirely related.
12 years ago
triton
d7f776cbba
Removed property accessors ignored checking code.
...
The logic here is just wrong... first even if one of the accessors is ignored that does not mean we should ignore the whole property. Additionally, the code logic to check if an accessor is ignored is faulty, we can not rely on the return value of the Visit functions, but check if the declaration itself was ignored.
12 years ago
triton
e5c85179d2
Ignore note diagnostics.
12 years ago
triton
067b2e841a
Added a new pass to check for special macros known to CppSharp that can control binding behavior.
12 years ago