#include <ltlast/refformula.hh>
Inheritance diagram for spot::ltl::ref_formula:
Public Member Functions | |
virtual void | accept (visitor &v)=0 |
Entry point for vspot::ltl::visitor instances. | |
virtual void | accept (const_visitor &v) const=0 |
Entry point for vspot::ltl::const_visitor instances. | |
formula * | ref () |
clone this node | |
const std::string & | dump () const |
Return a canonic representation of the formula. | |
const size_t | hash () const |
Return a hash_key for the formula. | |
Static Public Member Functions | |
static void | unref (formula *f) |
release this node | |
Protected Member Functions | |
virtual | ~ref_formula () |
ref_formula () | |
void | ref_ () |
increment reference counter if any | |
bool | unref_ () |
decrement reference counter if any, return true when the instance must be deleted (usually when the counter hits 0). | |
unsigned | ref_count_ () |
Number of references to this formula. | |
void | set_key_ () |
Compute key_ from dump_. | |
Protected Attributes | |
std::string | dump_ |
The canonic representation of the formula. | |
size_t | hash_key_ |
The hash key of this formula. | |
Private Attributes | |
unsigned | ref_counter_ |
virtual spot::ltl::ref_formula::~ref_formula | ( | ) | [protected, virtual] |
spot::ltl::ref_formula::ref_formula | ( | ) | [protected] |
void spot::ltl::ref_formula::ref_ | ( | ) | [protected, virtual] |
bool spot::ltl::ref_formula::unref_ | ( | ) | [protected, virtual] |
decrement reference counter if any, return true when the instance must be deleted (usually when the counter hits 0).
Reimplemented from spot::ltl::formula.
unsigned spot::ltl::ref_formula::ref_count_ | ( | ) | [protected] |
Number of references to this formula.
virtual void spot::ltl::formula::accept | ( | visitor & | v | ) | [pure virtual, inherited] |
Entry point for vspot::ltl::visitor instances.
Implemented in spot::ltl::atomic_prop, spot::ltl::binop, spot::ltl::constant, spot::ltl::multop, and spot::ltl::unop.
virtual void spot::ltl::formula::accept | ( | const_visitor & | v | ) | const [pure virtual, inherited] |
Entry point for vspot::ltl::const_visitor instances.
Implemented in spot::ltl::atomic_prop, spot::ltl::binop, spot::ltl::constant, spot::ltl::multop, and spot::ltl::unop.
formula* spot::ltl::formula::ref | ( | ) | [inherited] |
clone this node
This increments the reference counter of this node (if one is used). You should almost never use this method directly as it doesn't touch the children. If you want to clone a whole formula, use spot::ltl::clone() instead.
static void spot::ltl::formula::unref | ( | formula * | f | ) | [static, inherited] |
release this node
This decrements the reference counter of this node (if one is used) and can free the object. You should almost never use this method directly as it doesn't touch the children. If you want to release a whole formula, use spot::ltl::destroy() instead.
const std::string& spot::ltl::formula::dump | ( | ) | const [inherited] |
Return a canonic representation of the formula.
const size_t spot::ltl::formula::hash | ( | ) | const [inline, inherited] |
Return a hash_key for the formula.
void spot::ltl::formula::set_key_ | ( | ) | [protected, inherited] |
Compute key_ from dump_.
Should be called once in each object, after dump_ has been set.
unsigned spot::ltl::ref_formula::ref_counter_ [private] |
std::string spot::ltl::formula::dump_ [protected, inherited] |
The canonic representation of the formula.
size_t spot::ltl::formula::hash_key_ [protected, inherited] |
The hash key of this formula.
Initialized by set_key_().