spot
0.8.2
|
An LTL formula.The only way you can work with a formula is to build a spot::ltl::visitor or spot::ltl::const_visitor. More...
#include <ltlast/formula.hh>
Public Member Functions | |
formula () | |
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 * | clone () const |
clone this node | |
void | destroy () const |
release this node | |
virtual std::string | dump () const =0 |
Return a canonic representation of the formula. | |
size_t | hash () const |
Return a hash key for the formula. | |
Protected Member Functions | |
virtual | ~formula () |
virtual void | ref_ () |
increment reference counter if any | |
virtual bool | unref_ () |
decrement reference counter if any, return true when the instance must be deleted (usually when the counter hits 0). | |
Protected Attributes | |
size_t | count_ |
The hash key of this formula. | |
Static Private Attributes | |
static size_t | max_count |
Number of formulae created so far. |
An LTL formula.
The only way you can work with a formula is to build a spot::ltl::visitor or spot::ltl::const_visitor.
spot::ltl::formula::formula | ( | ) | [inline] |
virtual spot::ltl::formula::~formula | ( | ) | [protected, virtual] |
virtual void spot::ltl::formula::accept | ( | visitor & | v | ) | [pure virtual] |
Entry point for vspot::ltl::visitor instances.
Implemented in spot::ltl::multop, spot::ltl::binop, spot::ltl::automatop, spot::ltl::atomic_prop, spot::ltl::unop, and spot::ltl::constant.
virtual void spot::ltl::formula::accept | ( | const_visitor & | v | ) | const [pure virtual] |
Entry point for vspot::ltl::const_visitor instances.
Implemented in spot::ltl::multop, spot::ltl::binop, spot::ltl::automatop, spot::ltl::atomic_prop, spot::ltl::unop, and spot::ltl::constant.
formula* spot::ltl::formula::clone | ( | ) | const |
clone this node
This increments the reference counter of this node (if one is used).
void spot::ltl::formula::destroy | ( | ) | const |
release this node
This decrements the reference counter of this node (if one is used) and can free the object.
Referenced by spot::taa_tgba_labelled< std::string, string_hash >::add_acceptance_condition(), and spot::tgba_explicit_labelled< std::string, string_hash >::declare_acceptance_condition().
virtual std::string spot::ltl::formula::dump | ( | ) | const [pure virtual] |
Return a canonic representation of the formula.
Implemented in spot::ltl::multop, spot::ltl::binop, spot::ltl::automatop, spot::ltl::unop, spot::ltl::atomic_prop, and spot::ltl::constant.
Referenced by spot::ltl::formula_ptr_less_than::operator()().
size_t spot::ltl::formula::hash | ( | ) | const [inline] |
Return a hash key for the formula.
References count_.
Referenced by spot::ltl::formula_ptr_less_than::operator()(), and spot::ltl::formula_ptr_hash::operator()().
virtual void spot::ltl::formula::ref_ | ( | ) | [protected, virtual] |
increment reference counter if any
Reimplemented in spot::ltl::ref_formula.
virtual bool spot::ltl::formula::unref_ | ( | ) | [protected, virtual] |
decrement reference counter if any, return true when the instance must be deleted (usually when the counter hits 0).
Reimplemented in spot::ltl::ref_formula.
size_t spot::ltl::formula::count_ [protected] |
The hash key of this formula.
Referenced by hash().
size_t spot::ltl::formula::max_count [static, private] |
Number of formulae created so far.