[cfe-commits] r77526 - in /cfe/trunk: include/clang/Index/IndexProvider.h include/clang/Index/Indexer.h include/clang/Index/Program.h lib/Index/Indexer.cpp lib/Index/Program.cpp

Argiris Kirtzidis akyrtzi at gmail.com
Wed Jul 29 16:38:46 PDT 2009


Author: akirtzidis
Date: Wed Jul 29 18:38:45 2009
New Revision: 77526

URL: http://llvm.org/viewvc/llvm-project?rev=77526&view=rev
Log:
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.

Modified:
    cfe/trunk/include/clang/Index/IndexProvider.h
    cfe/trunk/include/clang/Index/Indexer.h
    cfe/trunk/include/clang/Index/Program.h
    cfe/trunk/lib/Index/Indexer.cpp
    cfe/trunk/lib/Index/Program.cpp

Modified: cfe/trunk/include/clang/Index/IndexProvider.h
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Index/IndexProvider.h?rev=77526&r1=77525&r2=77526&view=diff

==============================================================================
--- cfe/trunk/include/clang/Index/IndexProvider.h (original)
+++ cfe/trunk/include/clang/Index/IndexProvider.h Wed Jul 29 18:38:45 2009
@@ -25,7 +25,7 @@
 public:
   virtual ~IndexProvider();
   virtual void GetTranslationUnitsFor(Entity Ent,
-                                      TranslationUnitHandler *Handler) = 0;
+                                      TranslationUnitHandler &Handler) = 0;
 };
 
 } // namespace idx

Modified: cfe/trunk/include/clang/Index/Indexer.h
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Index/Indexer.h?rev=77526&r1=77525&r2=77526&view=diff

==============================================================================
--- cfe/trunk/include/clang/Index/Indexer.h (original)
+++ cfe/trunk/include/clang/Index/Indexer.h Wed Jul 29 18:38:45 2009
@@ -38,7 +38,7 @@
   void IndexAST(TranslationUnit *TU);
 
   virtual void GetTranslationUnitsFor(Entity Ent,
-                                      TranslationUnitHandler *Handler);
+                                      TranslationUnitHandler &Handler);
 
   typedef TUSetTy::iterator translation_unit_iterator;
 

Modified: cfe/trunk/include/clang/Index/Program.h
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Index/Program.h?rev=77526&r1=77525&r2=77526&view=diff

==============================================================================
--- cfe/trunk/include/clang/Index/Program.h (original)
+++ cfe/trunk/include/clang/Index/Program.h Wed Jul 29 18:38:45 2009
@@ -34,7 +34,7 @@
   ~Program();
 
   /// \brief Traverses the AST and passes all the entities to the Handler.
-  void FindEntities(ASTContext &Ctx, EntityHandler *Handler);
+  void FindEntities(ASTContext &Ctx, EntityHandler &Handler);
 };
 
 } // namespace idx

Modified: cfe/trunk/lib/Index/Indexer.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Index/Indexer.cpp?rev=77526&r1=77525&r2=77526&view=diff

==============================================================================
--- cfe/trunk/lib/Index/Indexer.cpp (original)
+++ cfe/trunk/lib/Index/Indexer.cpp Wed Jul 29 18:38:45 2009
@@ -39,11 +39,11 @@
 
 void Indexer::IndexAST(TranslationUnit *TU) {
   EntityIndexer Idx(TU, Map);
-  Prog.FindEntities(TU->getASTContext(), &Idx);
+  Prog.FindEntities(TU->getASTContext(), Idx);
 }
 
 void Indexer::GetTranslationUnitsFor(Entity Ent,
-                                     TranslationUnitHandler *Handler) {
+                                     TranslationUnitHandler &Handler) {
   assert(Ent.isValid() && "Expected valid Entity");
   assert(!Ent.isInternalToTU() &&
          "Expected an Entity visible outside of its translation unit");
@@ -54,7 +54,7 @@
   
   TUSetTy &Set = I->second;
   for (TUSetTy::iterator I = Set.begin(), E = Set.end(); I != E; ++I)
-    Handler->Handle(*I);
+    Handler.Handle(*I);
 }
 
 static Indexer::TUSetTy EmptySet;

Modified: cfe/trunk/lib/Index/Program.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Index/Program.cpp?rev=77526&r1=77525&r2=77526&view=diff

==============================================================================
--- cfe/trunk/lib/Index/Program.cpp (original)
+++ cfe/trunk/lib/Index/Program.cpp Wed Jul 29 18:38:45 2009
@@ -30,20 +30,21 @@
   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);
 }





More information about the cfe-commits mailing list