Joao Matos
d6b21efe59
Ignore namespace alias when parsing declarations.
10 years ago
Joao Matos
7f75246215
Added support for C++11 type alias template declarations.
...
Partial fix for https://github.com/mono/CppSharp/issues/664 .
10 years ago
Joao Matos
afa12be715
Added support for C++11 type-alias type declarations.
...
In the future, we might want to add a TypeAliasDecl AST node,
but for now this simple approach is enough for typedef-like using declarations.
Won't be enough to support partial template using syntax (TypeAliasTemplateDecl).
Partial fix for https://github.com/mono/CppSharp/issues/664 .
10 years ago
Joao Matos
965129182d
Fixed parsing of classes with virtual bases.
...
This bug only manifested itself as an assert in debug builds.
Partial fix for https://github.com/mono/CppSharp/issues/664 .
10 years ago
Joao Matos
d4a2a7ea25
Fixed parsing of dependent member pointer types.
...
Partial fix for https://github.com/mono/CppSharp/issues/664 .
10 years ago
Dimitar Dobrev
517b1a5ccd
Saved the offsets per base in the layout of a record.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
c4c2ef21ce
Filled in all missing v-table pointers in record layouts.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
e2b8f44565
Properly fixed the offsets of fields in all possible cases.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
e38ebdd55c
Introduced more proper const-ness to the parser.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
0af26773de
Simplified the walking of qualified types in the parser.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
733ea63925
Introduced proper const-ness to the parser.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
02ed084fd8
Added template specialisations to their lists before parsing their parameters.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
0c107a3bee
Fixed the comparison of template specialisation types.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
5987b5783e
Fixed a bug causing friend declarations to have their real declaration empty.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
0798c5428c
Fixed a case of default arguments which use nullptr.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
cdc51afc0e
Extended the parser and AST to handle template template parameters.
...
For more details see the Clang documentation ( http://clang.llvm.org/doxygen/classclang_1_1TemplateTemplateParmDecl.html ).
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
8a4261dd42
Handled the completeness of template specialisations in the parser.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
b50001b2ea
Wrapped the unified symbol resolutions (USR) of declarations.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
dc84c9b765
Added an option to parse all headers at once - much faster.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
69bd424c75
Temporarily suspended the completion of types because it causes problems while not useful yet.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
b41dc261ed
Added support for directly wrapping entire sets of interdependent libraries.
...
It's realised by using modules. Users now have to define one module for each library they want wrapped while setting the driver up.
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
e41d4340e9
Simplified the parser by removing a redundancy.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
e289dd47bf
Extended the class for modules with include and library dirs, and defines.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
41cd6e6ab7
Fixed a regression when generating the parser bindings for OS X.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
0d5c4539a2
Generated internals of types nested in templates.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
a6604b5f8c
Fixed a regression when getting code gen info for certain functions.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
1604f8e494
Removed the completion of system types because it needlessly exhausts the stack.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
8badb497cf
Fixed an endless recursion when checking a function for code generation.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
f29e3a2240
Fixed an assert when parsing nested types which use template instantiations of void.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
50a5d328db
Fixed an assert when parsing template instantiations of void.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
c4332f2c8a
Removed some redundant completion of types now that we complete all of them anyway.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
3d4c7c56f8
Changed the parser for easier transition to a newer Clang.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
2403d7d3a3
Replaced the useless internals of templates with the internals of their specialisations.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
e4200f4690
Fixed the wrapping of template parameters in the parser.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Joao Matos
bc26e77ab2
Extract AST->getTargetInfo() expression into a local variable.
10 years ago
Joao Matos
b53aaae81b
Fixes parsing of K&R-style C functions with no prototypes.
...
Fixes issue #641 .
10 years ago
Joao Matos
93f5161710
Fixed handling of different language versions in the C++ parser.
...
Fixes issue #641 .
10 years ago
Dimitar Dobrev
529b21775b
Added an explicit C++ destructor to avoid a crash on OS X.
10 years ago
Dimitar Dobrev
6821e983a6
Checked if a library exists before trying to parse it.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
2ef14d0fcf
Introduced consistent usage of '&' - it is now always stuck to the type.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
ae8d3feb53
Added reading of exported mach-o (OS X) symbols.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
cf479f4409
Wrapped more information about comments for better generation.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
e57ad1d3e9
Exposed in our AST the real comment behind a block comment.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
0dea8504ba
Regenerated the parser bindings.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
fc84e6bf1e
Added reading of dependencies of Mach-O (OS X) binaries.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
João Matos
9c7b666dbc
Fixed parsing of incline command arguments and HTML start tag comment attributes under non-Windows platforms.
10 years ago
Joao Matos
d4e34e44bd
Fixed parsing of block command comment arguments under non-Windows platforms.
10 years ago
Dimitar Dobrev
192fede3f7
Connected the functions in the AST to the template functions they instantiate, if any.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
a052a494c9
Regenerated the parser bindings.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago
Dimitar Dobrev
a2fd71cc74
Enabled getting of template specialisations when type locations are invalid.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
10 years ago