Dimitar Dobrev
74ec730811
Some reordering of code and improved logging.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
42a1af6503
Added a pass for generating wrapper code and definitions for inlines and an option for the name of the lib with inlines. Ignored non-tag indirect return types.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
ec92508726
Moved the finding of symbols after the custom passes. Gave a default value to the output dir.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
816c946790
Added a hard-coded for the time being option indicating whether the wrapped lib is 32-bit and used that option to generate the v-table offsets.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
19cb1f5470
Added an off by default option for generating abstract implementations because the MS ABI branch does not always work.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
7d3ee70a73
Renamed AbstractImplementationsPass to GeenrateAbstractImplementationsPass.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
6d2c0eaed8
Generated internal implementations of abstract classes in a new pass.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
triton
c66c34d4a9
Renamed the CLI language generator kind to be more uniform.
12 years ago
triton
c93e77166c
Added a new option GenerateInternalImports that outputs "__Internal" as the library name for DllImports. Fixes #54 .
...
For more details about what it does: http://www.mono-project.com/Embedding_Mono#Exposing_C_code_to_the_CIL_universe ).
12 years ago
triton
871a05511c
Added a new pass that checks for ambiguous overloads.
12 years ago
triton
caeb1d2f67
Added new pass CheckVirtualOverrideReturnCovariance that checks if a pair of return types in overriden methods are covariant according to the C++ standard.
12 years ago
triton
7f8f9289a1
Run CheckOperatorsOverloadsPass under both backends.
12 years ago
triton
14dbe76e9d
Run CleanInvalidDeclNamesPass earlier because some later passes need the names to be cleaned up.
12 years ago
triton
5ada754d72
Reworked MoveOperatorToClassPass to be simpler and correct.
12 years ago
triton
6b0cb59f8a
Added RunPasses to PassBuilder and change existing code to use it.
12 years ago
triton
62015b08e4
Added some helper properties to check generator kind.
12 years ago
triton
a5363e2f6c
Added new quiet option in the driver that does not output unnecessary information.
12 years ago
triton
16c13f6a16
Remove console buffering hack.
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
6814684072
Added virtual function overriding support to the C# backend.
12 years ago
triton
7c396d2852
Only run the FieldToPropertyPass after the user passes and the fields state can change.
12 years ago
triton
3e7354a24c
When building the passes also call the generator so it can setup its specific passes.
12 years ago
triton
359920bdbf
Added a new option to ignore parser warnings.
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
5c7bbe1bc0
Added CheckIgnoreDecls to the to pre passes, so user added passes already have some declarations ignored.
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
7dd2771604
Removed CheckTypeReferencesPass and TypeRefsVisitor
12 years ago
triton
fdb35ce28e
Clean up driver.
12 years ago
triton
6eef880f7e
Clean up the console driver by emitting file parsing diagnostics in the main driver.
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
68ddfbdd6f
Move the AST project to the CppSharp.AST namespace.
12 years ago
triton
968df88117
Add new option for checking symbols and for the main shared library name.
12 years ago
triton
a0e5aa1192
Remove two unused options.
12 years ago
triton
ff0eb8e496
Added missing MaxIndent option.
12 years ago
triton
4e4552186a
Generators now have a Process method to be able to do any custom processing.
12 years ago
triton
c3ac9e7efc
Split the generation and writing of bindings.
12 years ago
triton
4eb8358f0d
Change pass builder to be initialized in the constructor.
12 years ago
triton
16bd9d1deb
Improve option checking.
12 years ago
triton
848cb4e18c
Remove ILibrary out of the driver code and only call it from the ConsoleDriver.
12 years ago
triton
439d363cd1
Register generators in a static constructor.
12 years ago
triton
70f76588aa
Refactor file writing into the driver instead of duplicating it each generator.
12 years ago
triton
b68fe99754
Moved the user passes to run before some built-in classes so that declarations added by the passes can still be verified and processed.
12 years ago
triton
c83a87dbd4
Moved ignored declaration and type checking code from ResolveIncompleteDeclsPass to its own pass.
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
4e0b6f5d7a
Organize driver options.
12 years ago
triton
f301189982
Formatting changes.
12 years ago
triton
5631cdcfe1
Fixed the diagnostic reporting to report severity accurately.
12 years ago
triton
6ab16c43ac
Added support for a lot more driver options, including ignoring built-in and standard includes, target triple and ABIs, and system include directories.
12 years ago
triton
cc8f7cd1db
Renamed Cxxi references to CppSharp.
12 years ago
triton
b5f8f77a5f
Add the pass to check for operator overloads in C# mode.
12 years ago