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