StringSource.hpp

Go to the documentation of this file.
00001 #ifndef wali_STRING_SOURCE_GUARD
00002 #define wali_STRING_SOURCE_GUARD 1
00003 
00004 /**
00005  * @author Nicholas Kidd
00006  */
00007 
00008 #include "wali/Common.hpp"
00009 #include "wali/KeySource.hpp"
00010 #include <string>
00011 
00012 namespace wali
00013 {
00014   /**
00015    * @class StringSource
00016    */
00017   class StringSource : public KeySource
00018   {
00019     public:
00020       StringSource( const char* s );
00021 
00022       StringSource( const std::string s );
00023 
00024       virtual ~StringSource();
00025 
00026       virtual bool equal( KeySource* rhs );
00027 
00028       virtual size_t hash() const;
00029 
00030       virtual std::ostream& print( std::ostream& o ) const;
00031 
00032       std::string getString() const;
00033 
00034     private:
00035       const std::string s;
00036   };
00037 
00038 } // namespace wali
00039 
00040 #endif  // wali_STRING_SOURCE_GUARD
00041