aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Index/Program.cpp
diff options
context:
space:
mode:
authorArgyrios Kyrtzidis <akyrtzi@gmail.com>2009-07-29 23:38:45 +0000
committerArgyrios Kyrtzidis <akyrtzi@gmail.com>2009-07-29 23:38:45 +0000
commit14df96c730c7e1458f81c23970835dd9442ed916 (patch)
treece5f92ba0909156ef870b32a953a8f8c4f0ab7b9 /clang/lib/Index/Program.cpp
parent9ddd99ade70e978369af66dd5a2a139ea5f6d2f6 (diff)
downloadllvm-14df96c730c7e1458f81c23970835dd9442ed916.zip
llvm-14df96c730c7e1458f81c23970835dd9442ed916.tar.gz
llvm-14df96c730c7e1458f81c23970835dd9442ed916.tar.bz2
Accept Handler objects in parameters as references.
Reinforces that they shouldn't be null and it's a bit more natural when they are passed as stack objects. llvm-svn: 77526
Diffstat (limited to 'clang/lib/Index/Program.cpp')
-rw-r--r--clang/lib/Index/Program.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/clang/lib/Index/Program.cpp b/clang/lib/Index/Program.cpp
index a6bb96c..4efad2c5 100644
--- a/clang/lib/Index/Program.cpp
+++ b/clang/lib/Index/Program.cpp
@@ -30,20 +30,21 @@ Program::~Program() {
delete static_cast<ProgramImpl *>(Impl);
}
-static void FindEntitiesInDC(DeclContext *DC, Program &Prog, EntityHandler *Handler) {
+static void FindEntitiesInDC(DeclContext *DC, Program &Prog,
+ EntityHandler &Handler) {
for (DeclContext::decl_iterator
I = DC->decls_begin(), E = DC->decls_end(); I != E; ++I) {
if (I->getLocation().isInvalid())
continue;
Entity Ent = Entity::get(*I, Prog);
if (Ent.isValid())
- Handler->Handle(Ent);
+ Handler.Handle(Ent);
if (DeclContext *SubDC = dyn_cast<DeclContext>(*I))
FindEntitiesInDC(SubDC, Prog, Handler);
}
}
/// \brief Traverses the AST and passes all the entities to the Handler.
-void Program::FindEntities(ASTContext &Ctx, EntityHandler *Handler) {
+void Program::FindEntities(ASTContext &Ctx, EntityHandler &Handler) {
FindEntitiesInDC(Ctx.getTranslationUnitDecl(), *this, Handler);
}