AliasIRInterfaceDefault.hpp

Go to the documentation of this file.
00001 
00016 #ifndef AliasIRInterfaceDefault_h
00017 #define AliasIRInterfaceDefault_h
00018 
00019 #include <iostream>
00020 #include <list>
00021 #include "AliasIRInterface.hpp"
00022 
00023 namespace OA {
00024   namespace Alias {
00025 
00030 class EmptyIRStmtIterator  : public IRStmtIterator {
00031 public:
00032   EmptyIRStmtIterator() { }
00033   ~EmptyIRStmtIterator() { };
00034 
00035   StmtHandle current() const { return StmtHandle(0); }
00036   bool isValid()  const { return false; }
00037         
00038   void operator++() {}
00039 
00040   void reset() {}
00041 };
00042 
00043 
00044 
00045 class AliasIRInterfaceDefault : public virtual AliasIRInterface {
00046  public:
00047   AliasIRInterfaceDefault() { }
00048   virtual ~AliasIRInterfaceDefault() { }
00049  
00054   OA_ptr<IRStmtIterator> getUnnamedDynAllocStmtIterator(ProcHandle h)
00055       { OA_ptr<IRStmtIterator> retval;
00056         retval = new EmptyIRStmtIterator; 
00057         return retval;
00058       }
00059 
00062   virtual void dump(StmtHandle stmt, std::ostream& os) { }
00063 
00066   virtual void dump(MemRefHandle stmt, std::ostream& os) { }
00067 
00068 };  
00069 
00070   } // end of namespace Alias
00071 } // end of namespace OA
00072 
00073 #endif