word: store the bdd dict for easier printing

* src/twaalgos/word.hh, src/twaalgos/word.cc: Store the
bdd_dict, and replace the print() method by a << overload.
* NEWS: Mention it.
* src/bin/ltlcross.cc, src/bin/common_aoutput.hh: Adjust.
This commit is contained in:
Alexandre Duret-Lutz 2015-12-01 00:12:45 +01:00
parent cff79b063b
commit 2052e73af8
5 changed files with 27 additions and 9 deletions

View file

@ -26,15 +26,29 @@ namespace spot
class bdd_dict;
/// \brief An infinite word stored as a lasso.
struct SPOT_API twa_word
struct SPOT_API twa_word final
{
twa_word(const twa_run_ptr run);
~twa_word()
{
dict_->unregister_all_my_variables(this);
}
void simplify();
std::ostream& print(std::ostream& os, const bdd_dict_ptr& d) const;
typedef std::list<bdd> seq_t;
seq_t prefix;
seq_t cycle;
bdd_dict_ptr get_dict() const
{
return dict_;
}
SPOT_API
friend std::ostream& operator<<(std::ostream& os, const twa_word& w);
private:
bdd_dict_ptr dict_;
};
}