Concat.hpp

Go to the documentation of this file.
00001 #ifndef wali_regex_CONCAT_GUARD
00002 #define wali_regex_CONCAT_GUARD 1
00003 
00004 /*!
00005  * @author Nicholas Kidd
00006  */
00007 
00008 #include "wali/regex/Regex.hpp"
00009 
00010 namespace wali 
00011 {
00012   namespace regex 
00013   {
00014     class Concat : public Regex 
00015     {
00016       public:
00017         Concat( regex_t left, regex_t right );
00018 
00019         virtual ~Concat();
00020 
00021         virtual std::ostream& print_recurse( std::ostream& o ) const;
00022 
00023         virtual void to_mona_recurse(std::ostream& o, const std::string& prefix ) const;
00024         virtual std::ostream& write_dot_recurse( std::ostream& o ) const;
00025         virtual wali::sem_elem_t solve_recurse();
00026 
00027         virtual void reset_marks() const;
00028 
00029       public:
00030         regex_t left,right;
00031     };
00032 
00033   } // namespace regex
00034 
00035 } // namespace wali
00036 
00037 #endif  // wali_regex_CONCAT_GUARD
00038