diff options
| author | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2009-07-29 23:38:45 +0000 | 
|---|---|---|
| committer | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2009-07-29 23:38:45 +0000 | 
| commit | 14df96c730c7e1458f81c23970835dd9442ed916 (patch) | |
| tree | ce5f92ba0909156ef870b32a953a8f8c4f0ab7b9 /clang/lib/Index/Program.cpp | |
| parent | 9ddd99ade70e978369af66dd5a2a139ea5f6d2f6 (diff) | |
| download | llvm-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.cpp | 7 | 
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);  }  | 
