Public Member Functions | |
Rule (Config *f, Config *t, wali_key_t s2, sem_elem_t se) | |
constructor | |
~Rule () | |
destructor | |
const Config & | from () const |
wali_key_t | from_state () const |
wali_key_t | from_stack () const |
const Config & | to () const |
wali_key_t | to_state () const |
wali_key_t | to_stack1 () const |
wali_key_t | to_stack2 () const |
wali_key_t | stack2 () const |
const sem_elem_t & | weight () const |
sem_elem_t | weight () |
void | setWeight (sem_elem_t wnew) |
virtual std::ostream & | print (std::ostream &o) const |
std::ostream & | marshall (std::ostream &o) const |
bool | is_rule2 () const |
bool | operator== (Rule other) const |
TODO: fix comments operator== is needed by std::set. | |
bool | operator< (Rule other) const |
TODO: fix comments operator< is needed by std::set. | |
virtual void | copy (const rule_t r) |
Make a copy of the rule. | |
Static Public Attributes | |
static const std::string | XMLTag |
static const std::string | XMLFromTag |
static const std::string | XMLFromStackTag |
static const std::string | XMLToTag |
static const std::string | XMLToStack1Tag |
static const std::string | XMLToStack2Tag |
static int | numRules = 0 |
Protected Member Functions | |
Config * | from () |
Config * | to () |
Protected Attributes | |
Config * | f |
Config * | t |
wali_key_t | stk2 |
sem_elem_t | se |
Friends | |
class | WPDS |
class | DebugWPDS |
class | ewpds::EWPDS |
class | fwpds::FWPDS |
class | RuleWitness |
wali::wpds::Rule::Rule | ( | Config * | f, | |
Config * | t, | |||
wali_key_t | s2, | |||
sem_elem_t | se | |||
) |
constructor
References numRules.
wali::wpds::Rule::~Rule | ( | ) |
destructor
References numRules.
const Config & wali::wpds::Rule::from | ( | ) | const |
wali_key_t wali::wpds::Rule::from_state | ( | ) | const |
References from(), and wali::wpds::Config::state().
Referenced by marshall(), wali::wpds::ewpds::ERule::marshall(), and print().
wali_key_t wali::wpds::Rule::from_stack | ( | ) | const |
References from(), and wali::wpds::Config::stack().
Referenced by marshall(), wali::wpds::ewpds::ERule::marshall(), and print().
const Config & wali::wpds::Rule::to | ( | ) | const |
wali_key_t wali::wpds::Rule::to_state | ( | ) | const |
References wali::wpds::Config::state(), and to().
Referenced by marshall(), wali::wpds::ewpds::ERule::marshall(), and print().
wali_key_t wali::wpds::Rule::to_stack1 | ( | ) | const |
References wali::wpds::Config::stack(), and to().
Referenced by marshall(), wali::wpds::ewpds::ERule::marshall(), and print().
wali_key_t wali::wpds::Rule::to_stack2 | ( | ) | const |
References stack2().
Referenced by wali::wpds::ewpds::ERule::extended_weight(), marshall(), wali::wpds::ewpds::ERule::marshall(), and print().
wali_key_t wali::wpds::Rule::stack2 | ( | ) | const |
References stk2.
Referenced by is_rule2(), and to_stack2().
const sem_elem_t & wali::wpds::Rule::weight | ( | ) | const |
References se.
Referenced by wali::wpds::ewpds::EWPDS::add_rule(), wali::wpds::ewpds::ERule::extended_weight(), print(), wali::wpds::Wrapper::wrap(), and wali::witness::WitnessWrapper::wrap().
sem_elem_t wali::wpds::Rule::weight | ( | ) |
References se.
void wali::wpds::Rule::setWeight | ( | sem_elem_t | wnew | ) |
std::ostream & wali::wpds::Rule::print | ( | std::ostream & | o | ) | const [virtual] |
overrides (implements) Printable::print method
o | the std::ostream this is written to |
Reimplemented in wali::wpds::ewpds::ERule.
References from_stack(), from_state(), wali::key2str(), stk2, to_stack1(), to_stack2(), to_state(), and weight().
std::ostream & wali::wpds::Rule::marshall | ( | std::ostream & | o | ) | const |
marshall will write a Rule to a std::ostream. This writes the rule in XML form.
Reimplemented in wali::wpds::ewpds::ERule.
References from_stack(), from_state(), wali::key2str(), se, to_stack1(), to_stack2(), to_state(), XMLFromStackTag, XMLFromTag, XMLTag, XMLToStack1Tag, XMLToStack2Tag, and XMLToTag.
bool wali::wpds::Rule::is_rule2 | ( | ) | const |
References stack2().
bool wali::wpds::Rule::operator== | ( | Rule | other | ) | const |
TODO: fix comments operator== is needed by std::set.
References f, se, wali::wpds::Config::stack(), wali::wpds::Config::state(), stk2, and t.
bool wali::wpds::Rule::operator< | ( | Rule | other | ) | const |
TODO: fix comments operator< is needed by std::set.
References f, wali::wpds::Config::stack(), wali::wpds::Config::state(), stk2, and t.
void wali::wpds::Rule::copy | ( | const rule_t | r | ) | [virtual] |
Make a copy of the rule.
Reimplemented in wali::wpds::ewpds::ERule.
References f, wali::wpds::rule_t::is_valid(), se, stk2, and t.
friend class WPDS [friend] |
friend class DebugWPDS [friend] |
friend class ewpds::EWPDS [friend] |
friend class fwpds::FWPDS [friend] |
friend class RuleWitness [friend] |
const std::string wali::wpds::Rule::XMLTag [static] |
Referenced by marshall(), and wali::wpds::ewpds::ERule::marshall().
const std::string wali::wpds::Rule::XMLFromTag [static] |
Referenced by marshall(), and wali::wpds::ewpds::ERule::marshall().
const std::string wali::wpds::Rule::XMLFromStackTag [static] |
Referenced by marshall(), and wali::wpds::ewpds::ERule::marshall().
const std::string wali::wpds::Rule::XMLToTag [static] |
Referenced by marshall(), and wali::wpds::ewpds::ERule::marshall().
const std::string wali::wpds::Rule::XMLToStack1Tag [static] |
Referenced by marshall(), and wali::wpds::ewpds::ERule::marshall().
const std::string wali::wpds::Rule::XMLToStack2Tag [static] |
Referenced by marshall(), and wali::wpds::ewpds::ERule::marshall().
int wali::wpds::Rule::numRules = 0 [static] |
Config* wali::wpds::Rule::f [protected] |
Referenced by copy(), from(), operator<(), and operator==().
Config* wali::wpds::Rule::t [protected] |
Referenced by copy(), operator<(), operator==(), and to().
wali_key_t wali::wpds::Rule::stk2 [protected] |
Referenced by copy(), operator<(), operator==(), print(), and stack2().
sem_elem_t wali::wpds::Rule::se [protected] |
Referenced by copy(), marshall(), wali::wpds::ewpds::ERule::marshall(), operator==(), setWeight(), and weight().