triton
dc14a5699a
Reworked the CheckAbiParameters pass to be a lot more accurate by re-using the previously added support for indirect type information.
12 years ago
triton
c8abdeb192
Cleaned up operator overload helpers.
12 years ago
triton
5ada754d72
Reworked MoveOperatorToClassPass to be simpler and correct.
12 years ago
triton
a964df9069
Renamed HiddenStructureReturn to IndirectReturnType as it is a lot more clear.
12 years ago
Dimitar Dobrev
5208fafef7
Moved GeneratedIdentifier to the base Generator so that the former is available to all back-ends.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
triton
b495c77a64
Set the driver property in TranslationUnitPass when adding new passes.
12 years ago
triton
6b0cb59f8a
Added RunPasses to PassBuilder and change existing code to use it.
12 years ago
Dimitar Dobrev
8bea49599a
Fixed the check for duplicate names to ignore hidden return parameters.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
4f1eba905f
Moved all operators not belonging to a type to the type of their first parameters.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
43d01854a2
Fixed a regression causing a crash as some functions with no symbols are allowed to reach code generation.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
triton
b65ae11a5c
Fixed FindSymbolsPass to not ignore declarations in CLI generator.
12 years ago
triton
7d1bf939f5
Remove unused usings.
12 years ago
triton
d138661a86
Respect the CheckSymbols driver option in FindSymbolsPass.
12 years ago
Dimitar Dobrev
26c8f9fcd8
Properly fixed the generation of members using fixed arrays.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
2063aa2216
Fixed the filling of missing operators to account for operator overloads.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
90732c6ca7
Corrected the overloading of << and >> by making sure the second parameter is implicitly convertible to int.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
66ea1cd62c
Ignore any mangled declaration not found in library symbols.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
9161e58cf8
Ignored functions not found in library symbols.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
triton
e89d6696d8
Added access specifier checking for methods to CheckIgnoredDecls pass.
12 years ago
triton
352cb8b099
Cleaned up the ObjectOverridesPass pass.
12 years ago
triton
6bc1215ef3
Cleaned up using declarations.
12 years ago
triton
cf040d9c2a
Use a different generic type variable name that does not conflict with the parent one.
12 years ago
triton
3e505737d7
Rework the handling for functions that need hidden structure parameters.
...
The main changes are:
- The original return type is now kept as the type of the generated parameter
- The return type of the function is set to void to represent what is actually happening.
This also fixes a bunch of bugs related due to using the wrong return type in some places.
12 years ago
marcos henrich
f3045ea6c8
Generated code for equals override now checks if the dynamic_cast does not return null.
12 years ago
marcos henrich
0cf8c03aa3
PassBuilder is now generic. Driver Passes is now called TranslationUnitPasses. Added to driver GeneratorOutputPasses. Removed most of the PassBuilder Extensions.
12 years ago
marcos henrich
cc29233b2b
CheckFlagEnumsPass class is now public so it can be used in tests.
12 years ago
marcos henrich
b0d9e8b088
Fixed FunctionToInstanceMethodPass not skipping first method parameter.
12 years ago
marcos henrich
83ac0cdf71
Changed comment
12 years ago
marcos henrich
b1390894e0
Added missing new lines.
12 years ago
marcos henrich
ddfcf291df
CLI generator needs first function parameter.
12 years ago
marcos henrich
57ce9d449d
Removed class parameter from CheckIgnoreFunction, CheckIgnoreMethod and CheckIgnoreField.
12 years ago
marcos henrich
12daa4980c
Added CheckDuplicatedNamesPass that check all class members names for duplicated names. When a non function member has an already used name a number is append to its name. When a method is found with a know signature a number is append to its name. The appended number for each method overload is independently incremented, others members appended number start at the most overloaded method count which is then incremented with each non function member sharing the same name.
12 years ago
marcos henrich
3bd0086ac6
Fixed methods generated by FunctionToInstanceMethodPass and FunctionToStaticMethodPass, to use parent class Namespace and keep function Namespace as OriginalNamespace.
12 years ago
marcos henrich
06aba88fbb
Modified GetterSetterToPropertyPass more complex properties are supported. Now even if we only have a getter or a setter a property is created. Trying to convert multiple setter with same name and different types is an issue, so we check before creating a setter for a matching getter or the non existence of more setters.
12 years ago
marcos henrich
379cf32f1d
Added FieldToPropertyPass, all non ignored fields can now be transformed into properties before generation.
12 years ago
triton
c13e843a3d
Fixed the FunctionToInstanceMethod pass.
12 years ago
marcos henrich
7dd2771604
Removed CheckTypeReferencesPass and TypeRefsVisitor
12 years ago
marcos henrich
4875addfb4
Added synthetized check on block generation of ObjectOverridesPass.cs so already existing methods are not modified.
12 years ago
triton
383bfdf670
Add work-in-progress ObjectOverrides pass that adds GetHashCode and Equals overrides.
12 years ago
triton
252af32318
Added first pass at a pass for transforming compatible getters/setters into properties.
12 years ago
triton
8ed1584126
When checking for ignored declarations, return early if the declaration is already ignored.
12 years ago
triton
443e2a278b
Visit the base VisitDeclaration in Pass.
12 years ago
triton
0e0a78e008
Do not visit already visited classes in the ResolveIncompleteDecls pass.
12 years ago
triton
68ddfbdd6f
Move the AST project to the CppSharp.AST namespace.
12 years ago
triton
2a08b6e05b
Ignore properties if their getter or setter methods are also ignored.
12 years ago
triton
c989d9c121
Add the method RunPasses to PassBuilder.
12 years ago
triton
0a7656e257
Fix the build.
12 years ago
triton
ee43c3effc
Add missing documentation comment.
12 years ago
triton
c3ac9e7efc
Split the generation and writing of bindings.
12 years ago
triton
0f418fd753
Added new FindPass method to get the pass of a certain type.
12 years ago