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
Dimitar Dobrev
d92bc31a71
Replaced a call to == with ReferenceEquals when checking for null to avoid cycles in == operators.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
fe6378a88a
Added an additional property to type maps indicating if they actually provide marshalling (useful if only copy constructors are replaced).
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Øystein Krog
d6eaa6a7fd
Reorder code a bit such that new/old parser has same method order, easier to diff/compare.
12 years ago
Øystein Krog
663c91e443
Add support for fields with expressions (values) in CSharpTextTemplate
12 years ago
Øystein Krog
df7c1371a6
Pass in an CSharpExpressionPrinter instance to CSharpTextTemplate
12 years ago
Øystein Krog
c8b69fd601
Add Expression property in Field, allows a field to have a "value"
12 years ago
Øystein Krog
240d2db53d
Add new IExpressionPrinter interface, with CSharpExpressionPrinter implementation
12 years ago
Dimitar Dobrev
e08f2083f8
Worked around a bug of some incomplete classes having empty complete declarations.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
be34899fc5
Added tests for v-tables checking calls to virtuals from within C++ and passing parameters.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
aff6b2033a
Changed the option for bitness to be writable and 64-bit by default for 64-bit builds.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
ebd692e6aa
Fixed the renaming pass to consider forward declarations and function type defs.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
59e0fb9ede
Generated correct v-tables when using the Itanium ABI.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
3209f1a398
Fixed a possible crash in the finding of classes by name.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
d56affd117
Fixed the finding of classes to only return complete declarations.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
gpetrou
1ec9686111
Added default option to avoid generating ICppMarshal interface in the output files.
12 years ago
Dimitar Dobrev
20c6e04cd0
Fixed the ignoring of methods.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
cfeed2619a
Extended type maps with the ability to insert custom code instead of a copy ctor invocation.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
4c5d933cd2
Added support for marshalling arrays of pointers to primitives.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
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
0e905dbd36
Clean up the file path when finding translation units since they might differ between calls.
12 years ago
triton
b93cca9780
Updated the parser generator driver with support for different triples (and Darwin/OSX support).
12 years ago
triton
05073ef0e1
Re-generated the parser bindings for all platforms.
12 years ago
triton
44e354d680
Remove useless default constructor from SortDeclarationsPass.
12 years ago
triton
881cd21efa
Whitespace cleanup.
12 years ago
triton
45b110e739
Added arguments options support to pass custom Clang options to the parser.
12 years ago
triton
5677c5aa9d
Remove hardcoded "-Wno-undefined-inline" option from the parsers.
12 years ago
triton
cb62d64d5e
Fixed the parser, it got broken in a recent pull request merge.
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
triton
82d6d609b4
Fixed parsing of preprocessed entities for parameter declarations.
...
Clang reports a wrong source range for function parameters and since we already process them specially we should not process them in HandleDeclaration too, else we get duplicated entities.
12 years ago
triton
ae52dd8963
Fixed parsing of preprocessed entities for implicit declarations.
12 years ago
Øystein Krog
c191d0b337
Add new option (DependentNameSpaces) that allows for specifying custom using statements/namespaces in generated units
12 years ago
Øystein Krog
e9f43c059e
Modify parser to set the Namespace in MacroDefinition
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
7e077c6bc4
Re-generated the CLI parser bindings (with fix for reference pointers).
12 years ago
triton
819df6a2a2
Fixed CLI generation with references to pointers types (added a test).
12 years ago
triton
df88729095
Updated to the latest LLVM/Clang revisions.
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