Dimitar Dobrev
a2b8614f54
Improved the support for constructor expressions.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
10 years ago
Dimitar Dobrev
f0d237d9c2
Added a new property for the line number of the end of a declaration.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
10 years ago
triton
ac7176f1b7
Added parsing and AST support for C++ friend declarations.
11 years ago
Dimitar Dobrev
58fb80f571
Fixed a few regressions introduced by the updated code for default args.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
11 years ago
Dimitar Dobrev
26df3e0c77
Improved the handling of numeric default values.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
11 years ago
Dimitar Dobrev
768b443038
Added reading of symbols from DLL-s.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
11 years ago
Dimitar Dobrev
76e254e766
Extended the collection of library symbols to handle ELF shared objects (.so).
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
11 years ago
triton
5df897bb8e
Updated to the latest LLVM and Clang revisions.
11 years ago
Dimitar Dobrev
0499556bfe
Added support for default values of parameters.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
11 years ago
Dimitar Dobrev
5523a83b29
Converted all "complex" (for example participating in class hierarchies) data type to classes.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
11 years ago
Dimitar Dobrev
f88c20aa94
Some refactoring in preparation for the default values of parameters.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
11 years ago
triton
70dfd42e07
Added support for C records to the parser.
11 years ago
Tomi Valkeinen
7f690802ea
CppParser: remove unnecessary #includes
...
Use forward declarations to avoid the need to include lots of clang headers.
This drops the compilation time for CppParser from 17.8 seconds to 14.1 seconds
for me.
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@iki.fi>
11 years ago
Elias Holzer
933df5e65a
Improved support in parser for template classes and functions.
...
* Use clangIndex to identify declarations across translation units.
* Added new Find*ByUSR methods and removed unused Find*(IntPtr) methods.
* Added Depth/Index and IsParameterPack fields to TemplateParameterType.
* Fixed member initialization issues in C++ Method class.
* Added AST tests for function and class templates.
* All tests pass with new and old parser.
11 years ago
triton
55f4b849c7
Explicitly construct the parser and keep it in ParserResult.
...
This fixes some non-deterministic behavior in the new parser but it means we are keeping around all the memory for parsing until the end of the process. This is a bit messy right now but at least we keep the API compatible between parsers. After all the new parser bugs are squashed, this will be reworked.
11 years ago
triton
012efc0948
Minor formatting fixes.
11 years ago
triton
2daffce14f
Switched from llvm::OwningPtr to std::unique_ptr since LLVM removed it.
11 years ago
Øystein Krog
a268eb1875
Add new GetTargetInfo() method in parsers, that exposes information about type sizes and alignment.
12 years ago
triton
e9fd50983a
Reworked parsing of preprocessed entities.
...
Fixes macro expansions and translation units processing.
12 years ago
triton
5ce7213784
Added partial support for template specializations to the new parser.
12 years ago
triton
786ea61a7b
Fixed the C++ parser to properly parser libraries.
12 years ago
triton
677ca81154
Fixed regression in parsing of preprocessed entities.
...
Specifically we now store the pointer of the original declaration and check for duplicates.
12 years ago
Dimitar Dobrev
3f6b1d33f8
Added names to all parameters in the header for the parser.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
triton
078b71be45
Updated the C++ parser project to the new ASTContext class.
12 years ago
triton
1ecd2e138d
Updated CppParser to the latest Parser changes.
12 years ago
Joao Matos
17b3ac93b6
GCC/Clang parser build fixes.
12 years ago
triton
62839a3f0a
Added the new C++/CLI free parser.
...
I benchmarked it and it's about the same speed in Release mode (maybe a bit faster) but 3x slower in VS Debug mode due to all the STL usage.
12 years ago
triton
aff25384fe
Updated the parser to work with calling convention changes introduced in the latest Clang revisions (r189412).
12 years ago
triton
88229d8b71
Cleaned up Parser.h.
12 years ago
triton
5586acdbaf
Added accurate return and argument type ABI information by querying Clang's code gen layer for the correct information. This does add a lot of extra dependencies on LLVM and Clang libraries.
12 years ago
triton
5ea71589a8
Extract diagnostic handling to a method.
12 years ago
Dimitar Dobrev
90db6eb95d
Added an option for the used ABI to the C++ Parser class.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
triton
8c1372f80a
Fixed Clang parser initialization to be a bit more robust with invalid triples.
12 years ago
triton
5b7bd8bd03
Minor cleanup.
12 years ago
triton
dbd9fbc9d5
Added v[f]table parsing support.
12 years ago
triton
a6fa8af39d
Added full support for C++ documentation comments to the AST and parser.
12 years ago
triton
6a31a00760
Add the enumeration item expression as a string to the AST.
12 years ago
triton
68ddfbdd6f
Move the AST project to the CppSharp.AST namespace.
12 years ago
triton
c488dcbfde
Prefix all the libraries and project names with CppSharp.
12 years ago
marcos henrich
e066932762
Added to PreprocessedEntity MacroLocation, macroexpansions can now be retrieved before the begin of the declaration with GetDeclStartLocation
12 years ago
triton
c984806f5c
Remove the unused TypeLoc parameter from WalkDeclaration.
12 years ago
triton
2fb1952c05
Remove HasClassDependentFields and IsDependent parameter from WalkRecordCXX and just query Clang directly if the type is dependent.
12 years ago
triton
5e475658a8
Completely re-work the way we handle namespaces/declaration contexts in the native parser to properly handle nested definitions.
12 years ago
triton
bc79dad205
Completely rework the way we check for source locations to be more robust.
12 years ago
triton
0516d4b0a2
Added support for shared library parsing.
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
c93dabe0c2
Improved the support for preprocessed entities.
12 years ago
triton
cc8f7cd1db
Renamed Cxxi references to CppSharp.
12 years ago
triton
fe85a6590b
Added support for parsing native library symbols.
12 years ago
triton
e4df985659
Deal properly with calling conventions by resolving CC_Default conventions.
12 years ago