triton
c4aaa2162a
Write new lines between method blocks.
13 years ago
triton
ba3e84a12c
Fixed handling of overriden methods.
13 years ago
Dimitar Dobrev
652c6e1011
Stripped "lib" from the beginning of a library name for compatibility with the .NET (that is, on Windows) way of importing DLL-s.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
13 years ago
Dimitar Dobrev
58b2529df3
A simple prototype for supporting unions.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
13 years ago
triton
e650d7decf
Desugar pointer types when checking for primitive types while marshaling.
13 years ago
triton
cc5a8656b8
Added marshaling of parameter declarations in native to managed marshaling of C# backend.
13 years ago
triton
5c34245276
Throw NotImplementedException instead of silently returning false when not able to handle type printing of primitive types in C# backend.
13 years ago
triton
d59e46bbc3
Removed useless code.
13 years ago
triton
6130c896fc
Extracted internal parameter gathering in its own method.
13 years ago
triton
eb909c6fba
Added an "argument prefix" generator to the C# context so typemaps can add prefixes before arguments are generated.
13 years ago
triton
beead40dec
Fixed handling of field properties in C# backend.
13 years ago
triton
d4b4ec6793
Minor code cleanups.
13 years ago
triton
d9a23baaf4
Fixed type printing of hidden structure parameters in C#.
13 years ago
triton
e5ba3ac401
Reworked C# type printing and marshaling to keep the root full type in the respective contexts.
...
This allows us to access the root type in the type maps to do proper handling of pointers. It's a bit of an hacky approach and it will be improved once there is a better more general type matching framework.
13 years ago
triton
ee3641338c
Rework class fields generation in the C# backend to be simpler and behave correctly under more situations.
13 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.
13 years ago
triton
e0e507b938
Implemented type printing support for PrimitiveType.IntPtr.
13 years ago
triton
ebde1312c2
Run the CheckAbiParameters pass after CheckOperatorsOverloadsPass since the latter can change the signature of the methods which can affect the correctness of the first pass.
13 years ago
triton
6814684072
Added virtual function overriding support to the C# backend.
13 years ago
Dimitar Dobrev
ef1828d710
Checked the desugared type when visiting pointer types.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
13 years ago
Dimitar Dobrev
31fe7760ad
Added 3 hacks so that QtCore reaches the end of code generation:
...
1. If an expression of an enum item is null, count it as non-hex;
2. Do not throw a NotSupported exception when a fixed array of an non-primitive type is encountered;
3. Provide some seemingly correct implementation for CppTypePrinter.VisitTemplateParameterSubstitutionType.
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
13 years ago
Dimitar Dobrev
7f8494ca94
Added generation of function pointers.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
13 years ago
triton
f2999bafd0
Add the 'virtual' keyword in the C# generated method signatures.
13 years ago
triton
2b3a8f79e4
Fixed the documentation comments support in the generators to use the new comment APIs.
13 years ago
triton
7dacbce44d
Check if all overloads actually exist before gathering them for internal function processing.
13 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.
13 years ago
marcos henrich
90efc99083
CheckIgnoreField has only one parameter now
13 years ago
marcos henrich
a45dbc7655
Fix template function generation. Return type should be created in TypePrinter.
13 years ago
marcos henrich
feef6ee80d
Removed class parameter from CheckIgnoreFunction, CheckIgnoreMethod and CheckIgnoreField from recent commits.
13 years ago
marcos henrich
57ce9d449d
Removed class parameter from CheckIgnoreFunction, CheckIgnoreMethod and CheckIgnoreField.
13 years ago
marcos henrich
777de80c3b
Resolved ambiguous type Type.
13 years ago
marcos henrich
ca569eb334
Better template function generation, less manual fixes are needed after generation.
13 years ago
marcos henrich
dc8ecc9d2e
Removed unnecessary override keyword from interface method implementations.
13 years ago
marcos henrich
61986172e7
CLIHeaderTemplate an CLISourcesTemplate now take care of properties with only a getter or s setter, and properties using fields that for now always have a getter and a setter.
13 years ago
marcos henrich
78ab63086a
CLIHeadersTemplate.cs now always tries to generate properties even when it is a value class. This is done because now fields should be converted to properties with FieldToPropertyPass.
13 years ago
triton
f1f5723157
Use a constant displacement for block ids so they do not conflict with CLI ones.
13 years ago
triton
cca70acea5
Skip implementation generation for proxy methods.
13 years ago
triton
5f4edce340
Extract field generation into its own method.
13 years ago
triton
1887f80dfd
Added declarations of class properties to CLI.
13 years ago
triton
80c987a1e6
Use an explicit cast instead of "as" since there should always be a namespace.
13 years ago
Bright Twin
7c19f5f7db
Added global:: prefix to all System.IntPtr references in the C# code generator.
...
Without this qualification it is possible for the generated code to have namespace clashes with nested System namespaces in the code being wrapped.
13 years ago
marcos henrich
06ab4864e2
Added TypeReferenceCollector used for include and forward reference printing. TypeMaps are now able to add includes and forward references. Record system allows more complex situations where you need a declaration's origin type/declaration.
13 years ago
marcos henrich
e168e84d6a
Resolved ambiguity of System.Type and CppSharp.AST.Type
13 years ago
marcos henrich
10b4cde907
Added support to specify with TypeMaps, required includes and forward references of generic types
13 years ago
triton
ef7cd8ea47
Added support for IsOverride in the generators.
13 years ago
triton
2e97311423
Reference classes now implement the ICppInstance interface.
...
This will be used to add support for overrides of Equals and GetHashCode.
13 years ago
triton
acac3fc00d
Re-work handling of enum constants fixing signedness and formatting issues.
13 years ago
triton
7dca138287
Use fully qualified names in C# to minimize the chance of conflicts.
13 years ago
triton
815b9dcf37
Output the runtime helper in sources instead of headers.
13 years ago
triton
f47dc5bb07
Convert the C# backend to the new blocks system.
13 years ago