Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | Protected Member Functions | Protected Attributes

wali::regex::Regex Class Reference

List of all members.

Public Member Functions

 Regex ()
 Regex (wali::sem_elem_t se)
virtual ~Regex ()
void toMona (std::ostream &o, const std::string &prefix) const
std::ostream & write_dot (std::ostream &o) const
wali::sem_elem_t solve ()
virtual void reset_marks () const
bool isOne () const
bool isZero () const
virtual bool isConstant () const
virtual wali::sem_elem_t one () const
virtual wali::sem_elem_t zero () const
virtual bool equal (wali::SemElem *se) const
virtual wali::sem_elem_t combine (wali::SemElem *se)
virtual wali::sem_elem_t extend (wali::SemElem *se)
virtual std::ostream & print (std::ostream &o) const
virtual std::ostream & print_recurse (std::ostream &o) const =0
virtual std::ostream & write_dot_recurse (std::ostream &o) const =0
virtual void to_mona_recurse (std::ostream &o, const std::string &prefix) const =0
virtual wali::sem_elem_t solve_recurse ()=0
virtual size_t hash () const
std::ostream & monaHeader (std::ostream &o, const std::string &prefix) const
std::ostream & monaName (std::ostream &o, const std::string &prefix) const

Static Public Member Functions

static regex_t ID ()
static regex_t NIL ()
static regex_t COMBINE (regex_t lhs, regex_t rhs)
static regex_t EXTEND (regex_t lhs, regex_t rhs)
static regex_t STAR (regex_t r)

Public Attributes

const int id

Static Public Attributes

static const std::string lblID
static const std::string lblNIL

Protected Member Functions

std::ostream & write_dot_state (std::ostream &o, const std::string &lbl, const std::string &color) const
std::ostream & write_dot_edge (std::ostream &o, regex_t that) const

Protected Attributes

wali::sem_elem_t value

Constructor & Destructor Documentation

wali::regex::Regex::Regex (  ) 
wali::regex::Regex::Regex ( wali::sem_elem_t  se  ) 
wali::regex::Regex::~Regex (  )  [virtual]

Member Function Documentation

regex_t wali::regex::Regex::ID (  )  [static]
Returns:
regex_t == Root(lblID)

Reimplemented in wali::regex::Root.

Referenced by one(), and STAR().

regex_t wali::regex::Regex::NIL (  )  [static]
Returns:
regex_t == Root(lblNIL)

Reimplemented in wali::regex::Root.

Referenced by EXTEND(), and zero().

regex_t wali::regex::Regex::COMBINE ( regex_t  lhs,
regex_t  rhs 
) [static]
regex_t wali::regex::Regex::EXTEND ( regex_t  lhs,
regex_t  rhs 
) [static]

References NIL().

Referenced by extend().

regex_t wali::regex::Regex::STAR ( regex_t  r  )  [static]

References ID(), and wali::graph::Star.

void wali::regex::Regex::toMona ( std::ostream &  o,
const std::string &  prefix 
) const

References reset_marks(), and to_mona_recurse().

std::ostream & wali::regex::Regex::write_dot ( std::ostream &  o  )  const
wali::sem_elem_t wali::regex::Regex::solve (  ) 

References reset_marks(), and solve_recurse().

void wali::regex::Regex::reset_marks (  )  const [virtual]
bool wali::regex::Regex::isOne (  )  const
bool wali::regex::Regex::isZero (  )  const
bool wali::regex::Regex::isConstant (  )  const [virtual]

Reimplemented in wali::regex::Root.

wali::sem_elem_t wali::regex::Regex::one (  )  const [virtual]

Implements wali::SemElem.

References ID().

Referenced by isOne().

wali::sem_elem_t wali::regex::Regex::zero (  )  const [virtual]

Implements wali::SemElem.

References NIL().

Referenced by isZero().

bool wali::regex::Regex::equal ( wali::SemElem se  )  const [virtual]

Implements wali::SemElem.

References isOne(), and isZero().

wali::sem_elem_t wali::regex::Regex::combine ( wali::SemElem se  )  [virtual]
wali::sem_elem_t wali::regex::Regex::extend ( wali::SemElem se  )  [virtual]
std::ostream & wali::regex::Regex::print ( std::ostream &  o  )  const [virtual]

Implements wali::SemElem.

References print_recurse(), and reset_marks().

virtual std::ostream& wali::regex::Regex::print_recurse ( std::ostream &  o  )  const [pure virtual]
virtual std::ostream& wali::regex::Regex::write_dot_recurse ( std::ostream &  o  )  const [pure virtual]
virtual void wali::regex::Regex::to_mona_recurse ( std::ostream &  o,
const std::string &  prefix 
) const [pure virtual]
virtual wali::sem_elem_t wali::regex::Regex::solve_recurse (  )  [pure virtual]
size_t wali::regex::Regex::hash (  )  const [virtual]
std::ostream & wali::regex::Regex::monaHeader ( std::ostream &  o,
const std::string &  prefix 
) const
std::ostream & wali::regex::Regex::monaName ( std::ostream &  o,
const std::string &  prefix 
) const

References id.

Referenced by monaHeader().

std::ostream & wali::regex::Regex::write_dot_state ( std::ostream &  o,
const std::string &  lbl,
const std::string &  color 
) const [protected]
std::ostream & wali::regex::Regex::write_dot_edge ( std::ostream &  o,
regex_t  that 
) const [protected]

Member Data Documentation

const std::string wali::regex::Regex::lblID [static]
const std::string wali::regex::Regex::lblNIL [static]

Referenced by monaName().


The documentation for this class was generated from the following files: