* iface/gspn/gspn.cc, src/ltlvisit/basicreduce.cc,
src/ltlvisit/destroy.cc, src/ltlvisit/dotty.cc,
src/ltlvisit/dump.cc, src/ltlvisit/length.cc,
src/ltlvisit/nenoform.cc, src/ltlvisit/reduce.cc,
src/ltlvisit/syntimpl.cc, src/ltlvisit/tostring.cc,
src/tgba/formula2bdd.cc, src/tgba/tgbabddconcreteproduct.cc,
src/tgba/tgbatba.cc, src/tgbaalgos/dotty.cc,
src/tgbaalgos/dupexp.cc, src/tgbaalgos/lbtt.cc,
src/tgbaalgos/ltl2tgba_lacim.cc, src/tgbaalgos/neverclaim.cc,
src/tgbaalgos/save.cc, src/tgbaalgos/stats.cc,
src/tgbaalgos/gtec/nsheap.cc, src/tgbaalgos/gtec/nsheap.hh:
Declare private classes and helper function in anonymous namespaces.
* HACKING, src/sanity/style.test: Document and check this.
Also check for trailing { after namespace or class.
* src/ltlast/predecl.hh, src/ltlast/visitor.hh,
src/tgba/tgbareduc.hh: Fix trailing {.
This commit is contained in:
parent
5176caf4d2
commit
7d27fd3796
28 changed files with 3128 additions and 3025 deletions
|
|
@ -1,4 +1,4 @@
|
|||
// Copyright (C) 2003 Laboratoire d'Informatique de Paris 6 (LIP6),
|
||||
// Copyright (C) 2003, 2004 Laboratoire d'Informatique de Paris 6 (LIP6),
|
||||
// département Systèmes Répartis Coopératifs (SRC), Université Pierre
|
||||
// et Marie Curie.
|
||||
//
|
||||
|
|
@ -24,55 +24,58 @@
|
|||
|
||||
namespace spot
|
||||
{
|
||||
/// \brief Helper class for product().
|
||||
///
|
||||
/// As both automata are encoded using BDD, we just have
|
||||
/// to homogenize the variable numbers before ANDing the
|
||||
/// relations and initial states.
|
||||
class tgba_bdd_product_factory: public tgba_bdd_factory
|
||||
namespace
|
||||
{
|
||||
public:
|
||||
tgba_bdd_product_factory(const tgba_bdd_concrete* left,
|
||||
const tgba_bdd_concrete* right)
|
||||
: dict_(left->get_dict()),
|
||||
left_(left),
|
||||
right_(right),
|
||||
data_(left_->get_core_data(), right_->get_core_data()),
|
||||
init_(left_->get_init_bdd() & right_->get_init_bdd())
|
||||
/// \brief Helper class for product().
|
||||
///
|
||||
/// As both automata are encoded using BDD, we just have
|
||||
/// to homogenize the variable numbers before ANDing the
|
||||
/// relations and initial states.
|
||||
class tgba_bdd_product_factory: public tgba_bdd_factory
|
||||
{
|
||||
assert(dict_ == right->get_dict());
|
||||
}
|
||||
public:
|
||||
tgba_bdd_product_factory(const tgba_bdd_concrete* left,
|
||||
const tgba_bdd_concrete* right)
|
||||
: dict_(left->get_dict()),
|
||||
left_(left),
|
||||
right_(right),
|
||||
data_(left_->get_core_data(), right_->get_core_data()),
|
||||
init_(left_->get_init_bdd() & right_->get_init_bdd())
|
||||
{
|
||||
assert(dict_ == right->get_dict());
|
||||
}
|
||||
|
||||
virtual
|
||||
~tgba_bdd_product_factory()
|
||||
{
|
||||
}
|
||||
virtual
|
||||
~tgba_bdd_product_factory()
|
||||
{
|
||||
}
|
||||
|
||||
const tgba_bdd_core_data&
|
||||
get_core_data() const
|
||||
{
|
||||
return data_;
|
||||
}
|
||||
const tgba_bdd_core_data&
|
||||
get_core_data() const
|
||||
{
|
||||
return data_;
|
||||
}
|
||||
|
||||
bdd_dict*
|
||||
get_dict() const
|
||||
{
|
||||
return dict_;
|
||||
}
|
||||
bdd_dict*
|
||||
get_dict() const
|
||||
{
|
||||
return dict_;
|
||||
}
|
||||
|
||||
bdd
|
||||
get_init_state() const
|
||||
{
|
||||
return init_;
|
||||
}
|
||||
bdd
|
||||
get_init_state() const
|
||||
{
|
||||
return init_;
|
||||
}
|
||||
|
||||
private:
|
||||
bdd_dict* dict_;
|
||||
const tgba_bdd_concrete* left_;
|
||||
const tgba_bdd_concrete* right_;
|
||||
tgba_bdd_core_data data_;
|
||||
bdd init_;
|
||||
};
|
||||
private:
|
||||
bdd_dict* dict_;
|
||||
const tgba_bdd_concrete* left_;
|
||||
const tgba_bdd_concrete* right_;
|
||||
tgba_bdd_core_data data_;
|
||||
bdd init_;
|
||||
};
|
||||
}
|
||||
|
||||
tgba_bdd_concrete*
|
||||
product(const tgba_bdd_concrete* left, const tgba_bdd_concrete* right)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue