triton
fed9031775
Fixed support for C++ conversion operators.
12 years ago
Stephen Kennedy
0c7a72c400
Hack for CLI version
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
79d8528625
Fixed generation of nested declarations in classes (part 2).
12 years ago
triton
bed92373ec
Fixed out reference parameters in CLI backend (with test).
12 years ago
triton
66ef3c55ff
Reworked support for out parameters in both backends and added a test.
12 years ago
triton
17a8a4cbdc
Fixed generation of native object instantiation to use the original names.
12 years ago
triton
279c9c83cf
Fixed wrapping of null pointers to actually return null CLR references.
12 years ago
triton
0fcb5c0226
Optimized/fixed marshaling for fields as there is no need to create a copied instance of the native object.
12 years ago
triton
02559ed193
Added better support for unary operators.
12 years ago
triton
cf8eaa3a35
Optimized/fixed marshaling for fields as there is no need to create a copied instance of the native object.
12 years ago
triton
a4f1606956
Added better support for unary operators.
12 years ago
triton
8c0c76ca59
Reworked operator overloading support.
12 years ago
Dimitar Dobrev
a9d8e8bf03
Removed the hard-coded "__" from the CLI back-end.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
bf2dfd375c
Fixed the "ret" conflict in the CLI back-end as well.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
triton
47ba76a966
Remove extra newline.
12 years ago
triton
2fde4e5db5
Do not call type constructors using copy construction as it can be not defined.
12 years ago
triton
75e650aa3b
Reworked the method generation in the CLI backend to use blocks.
12 years ago
triton
aecd3b69aa
Fixed base constructor calls in the CLI backend to cast to the type of the base types as that can fix some ambiguous calls to overloaded constructors.
12 years ago
triton
2f4155ce56
Remove calls to GenerateDeclarationCommon in CLI sources generation.
12 years ago
triton
c490d25e74
Reworked property handling to check if each property getter/setter can be generated.
...
Fixes a bug where we tried to generate a setter for a const field.
12 years ago
triton
2b3a8f79e4
Fixed the documentation comments support in the generators to use the new comment APIs.
12 years ago
marcos henrich
a45dbc7655
Fix template function generation. Return type should be created in TypePrinter.
12 years ago
marcos henrich
feef6ee80d
Removed class parameter from CheckIgnoreFunction, CheckIgnoreMethod and CheckIgnoreField from recent commits.
12 years ago
marcos henrich
777de80c3b
Resolved ambiguous type Type.
12 years ago
marcos henrich
ca569eb334
Better template function generation, less manual fixes are needed after generation.
12 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.
12 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.
12 years ago
triton
2e97311423
Reference classes now implement the ICppInstance interface.
...
This will be used to add support for overrides of Equals and GetHashCode.
12 years ago
triton
815b9dcf37
Output the runtime helper in sources instead of headers.
12 years ago
triton
b9e57dba78
Re-write the blocks generator again (thanks to esdrubal for helping me with the new design).
...
Now the whitespace/new line handling is done by the output generator per block, instead of having to be managed manually which could lead to all sorts of messy output without being extra careful.
Also the new system limits the usage of generics since C# was too limited to design it properly, and it ended up being more trouble than it was worth. The blocks kinds were also changed to be const int, since enums are very hard to extend and made it hard to provide a common interface for dealing with blocks.
12 years ago
triton
0a7656e257
Fix the build.
12 years ago
triton
6308cf4c3c
Added a new templating system based on typed "text blocks", allowing a lot more customization after the initial text is generated.
...
The design might still change a bit in the future, but this is a good first step in getting things in the final direction without having to change too much the current generators.
12 years ago
triton
ee1bc28879
Use the output namespace instead of the library name when generating function names signatures.
12 years ago
triton
c8ce6ad245
Added some documentation to some classes.
12 years ago
triton
20b0b76421
Remove the GenerateStart and GenerateAfterNamespaces methods from the ILibrary interface and replace them with delegates on each generator.
12 years ago
marcos henrich
3310afee6e
Fixed generated CLI source code for native functions and native static methods
12 years ago
marcos henrich
7a9c1d19ba
Fixed constructor CLI calls, ::ClassName::ClassName() is now ::ClassName()
12 years ago
triton
bed7b4d8b7
Changed events parameters to be actual parameters rather than just types.
12 years ago
marcos henrich
2aca94d9f9
Using Unix path separator
12 years ago
triton
d3d7e1f2d6
Use the regular templates since classes are now regular declaration contexts and they do not have a separate container for FunctionTemplates.
12 years ago
triton
dd03761f6c
Remove the WrapperSuffix option and replace with a more general GenerateName delegate that can be hooked up by the user to customize the output name of the generated files.
12 years ago
triton
d37cca5ca1
Changed the return type of functions to be a qualified type.
12 years ago
triton
cc8f7cd1db
Renamed Cxxi references to CppSharp.
12 years ago
triton
e280de3d68
Generate the SupportBefore text template when marshaling value type fields.
12 years ago
triton
6f7e7908e8
Added proper wrapping of value type method calls in the CLI backend.
12 years ago
triton
6e61c9393c
Wrapped long lines.
12 years ago
triton
91d32df4e7
TypePrinterContext is now an abstract class and created a new CLITypePrinterContext class for the CLI backend.
12 years ago
marcos henrich
e41f2ad5e7
Added static variables correct code generation
12 years ago
marcos henrich
40954f202b
Added code generation support to out parameters
12 years ago