Manuel Klimek
021d56f948
Modifes BoundNodes to store void* and allow casting them
...
into the correct types when pulling them out in the result
callback in a type safe way.
This is also the base change for multiple things that will
allow handling things more generally and thus supporting more
of the AST, especially handling Type nodes.
Patch contributed by Michael Diamond.
llvm-svn: 162804
2012-08-28 23:26:39 +00:00
Daniel Jasper
3cb72b476d
Fix for ASTMatchFinder to visit a functions parameter declarations.
...
llvm-svn: 160947
2012-07-30 05:03:25 +00:00
Daniel Jasper
1975e03494
Move RefactoringCallbacks to Tooling to avoid dependency from
...
ASTMatchers (lower level abstraction) to Tooling (higher level
abstraction).
llvm-svn: 160351
2012-07-17 08:03:01 +00:00
Daniel Jasper
2b3c7d414b
Make the isDerivedFrom matcher more generic.
...
It now accepts an arbitrary inner matcher but is fully backwards
compatible.
llvm-svn: 160348
2012-07-17 07:39:27 +00:00
Daniel Jasper
7e22282b68
Add refactoring callbacks to make common kinds of refactorings easy.
...
llvm-svn: 160255
2012-07-16 09:18:17 +00:00
Daniel Jasper
1dad183b38
Add more matchers and do cleanups.
...
Reviewers: klimek
Differential Revision: http://ec2-50-18-127-156.us-west-1.compute.amazonaws.com/D2
llvm-svn: 160013
2012-07-10 20:20:19 +00:00
NAKAMURA Takumi
d7ba69de90
[CMake] Get rid of unconditional dependency to ClangDiagnosticCommon. Only clangBasic and clangASTMatchers need it.
...
llvm-svn: 159931
2012-07-09 14:12:20 +00:00
NAKAMURA Takumi
17a2ff2494
ASTMatchers/CMakeLists.txt: Add dependencies to generated headers, or "make clean; make ASTMatchers" would fail.
...
llvm-svn: 159906
2012-07-07 23:13:30 +00:00
Manuel Klimek
cb93f785de
Build-fix: Remove non-existent directories from Makefiles.
...
llvm-svn: 159807
2012-07-06 06:00:30 +00:00
Manuel Klimek
04616e4776
Adds the AST Matcher library, which provides a in-C++ DSL to express
...
matches on interesting parts of the AST, and callback mechanisms to
act on them.
llvm-svn: 159805
2012-07-06 05:48:52 +00:00