diff --git a/Driver/AnalysisConsumer.cpp b/Driver/AnalysisConsumer.cpp
index f01a755..f606c87 100644
--- a/Driver/AnalysisConsumer.cpp
+++ b/Driver/AnalysisConsumer.cpp
@@ -60,6 +60,7 @@
     Actions FunctionActions;
     Actions ObjCMethodActions;
     Actions ObjCImplementationActions;
+    Actions TranslationUnitActions;
     
   public:
     const bool VisGraphviz;
@@ -100,6 +101,10 @@
       ObjCImplementationActions.push_back(action);
     }
     
+    void addTranslationUnitAction(CodeAction action) {
+      TranslationUnitActions.push_back(action);
+    }
+    
     virtual void Initialize(ASTContext &Context) {
       Ctx = &Context;
     }
@@ -291,6 +296,13 @@
 
 void AnalysisConsumer::HandleTranslationUnit(TranslationUnit& TU) {
 
+  if(!TranslationUnitActions.empty()) {
+    AnalysisManager mgr(*this, &TU);
+    for (Actions::iterator I = TranslationUnitActions.begin(), 
+         E = TranslationUnitActions.end(); I != E; ++I)
+      (*I)(mgr);  
+  }
+
   if (ObjCImplementationActions.empty())
     return;
     
