Mark more classes are final.
Fixes #42. * bench/stutter/stutter_invariance_formulas.cc, bin/autfilt.cc, bin/common_output.cc, bin/dstar2tgba.cc, bin/ltl2tgba.cc, bin/ltl2tgta.cc, bin/ltlcross.cc, bin/ltldo.cc, bin/ltlfilt.cc, bin/ltlgrind.cc, spot/misc/intvcmp2.cc, spot/misc/intvcomp.cc, spot/taalgos/dot.cc, spot/taalgos/statessetbuilder.cc, spot/taalgos/stats.cc, spot/tl/relabel.cc, spot/tl/simplify.cc, spot/tl/snf.cc, spot/twa/bdddict.cc, spot/twa/twaproduct.cc, spot/twaalgos/degen.cc, spot/twaalgos/determinize.cc, spot/twaalgos/dot.cc, spot/twaalgos/emptiness.cc, spot/twaalgos/gtec/ce.cc, spot/twaalgos/ltl2tgba_fm.cc, spot/twaalgos/magic.cc, spot/twaalgos/neverclaim.cc, spot/twaalgos/se05.cc, spot/twaalgos/simulation.cc, spot/twaalgos/tau03.cc, spot/twaalgos/tau03opt.cc: Add final.
This commit is contained in:
parent
8814f16637
commit
2402c2141d
32 changed files with 78 additions and 76 deletions
|
|
@ -1,5 +1,5 @@
|
||||||
// -*- coding: utf-8 -*-
|
// -*- coding: utf-8 -*-
|
||||||
// Copyright (C) 2014, 2015 Laboratoire de Recherche et
|
// Copyright (C) 2014, 2015, 2016 Laboratoire de Recherche et
|
||||||
// Développement de l'Epita (LRDE).
|
// Développement de l'Epita (LRDE).
|
||||||
//
|
//
|
||||||
// This file is part of Spot, a model checking library.
|
// This file is part of Spot, a model checking library.
|
||||||
|
|
@ -40,7 +40,7 @@ const struct argp_child children[] =
|
||||||
|
|
||||||
namespace
|
namespace
|
||||||
{
|
{
|
||||||
class stut_processor: public job_processor
|
class stut_processor final: public job_processor
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
spot::translator& trans;
|
spot::translator& trans;
|
||||||
|
|
|
||||||
|
|
@ -601,7 +601,7 @@ parse_opt(int key, char* arg, struct argp_state*)
|
||||||
|
|
||||||
namespace
|
namespace
|
||||||
{
|
{
|
||||||
class hoa_processor: public job_processor
|
class hoa_processor final: public job_processor
|
||||||
{
|
{
|
||||||
private:
|
private:
|
||||||
spot::postprocessor& post;
|
spot::postprocessor& post;
|
||||||
|
|
|
||||||
|
|
@ -153,7 +153,7 @@ namespace
|
||||||
const char* suffix;
|
const char* suffix;
|
||||||
};
|
};
|
||||||
|
|
||||||
class printable_formula:
|
class printable_formula final:
|
||||||
public spot::printable_value<const formula_with_location*>
|
public spot::printable_value<const formula_with_location*>
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
@ -171,7 +171,7 @@ namespace
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
class formula_printer: protected spot::formater
|
class formula_printer final: protected spot::formater
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
formula_printer(std::ostream& os, const char* format)
|
formula_printer(std::ostream& os, const char* format)
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
// -*- coding: utf-8 -*-
|
// -*- coding: utf-8 -*-
|
||||||
// Copyright (C) 2013, 2014, 2015 Laboratoire de Recherche et
|
// Copyright (C) 2013, 2014, 2015, 2016 Laboratoire de Recherche et
|
||||||
// Développement de l'Epita (LRDE).
|
// Développement de l'Epita (LRDE).
|
||||||
//
|
//
|
||||||
// This file is part of Spot, a model checking library.
|
// This file is part of Spot, a model checking library.
|
||||||
|
|
@ -106,7 +106,7 @@ parse_opt(int key, char* arg, struct argp_state*)
|
||||||
|
|
||||||
namespace
|
namespace
|
||||||
{
|
{
|
||||||
class dstar_processor: public job_processor
|
class dstar_processor final: public job_processor
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
spot::postprocessor& post;
|
spot::postprocessor& post;
|
||||||
|
|
|
||||||
|
|
@ -109,7 +109,7 @@ parse_opt(int key, char* arg, struct argp_state*)
|
||||||
|
|
||||||
namespace
|
namespace
|
||||||
{
|
{
|
||||||
class trans_processor: public job_processor
|
class trans_processor final: public job_processor
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
spot::translator& trans;
|
spot::translator& trans;
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
// -*- coding: utf-8 -*-
|
// -*- coding: utf-8 -*-
|
||||||
// Copyright (C) 2012, 2013, 2014, 2015 Laboratoire de Recherche et
|
// Copyright (C) 2012, 2013, 2014, 2015, 2016 Laboratoire de Recherche
|
||||||
// Développement de l'Epita (LRDE).
|
// et Développement de l'Epita (LRDE).
|
||||||
//
|
//
|
||||||
// This file is part of Spot, a model checking library.
|
// This file is part of Spot, a model checking library.
|
||||||
//
|
//
|
||||||
|
|
@ -159,7 +159,7 @@ parse_opt(int key, char* arg, struct argp_state*)
|
||||||
|
|
||||||
namespace
|
namespace
|
||||||
{
|
{
|
||||||
class trans_processor: public job_processor
|
class trans_processor final: public job_processor
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
spot::translator& trans;
|
spot::translator& trans;
|
||||||
|
|
|
||||||
|
|
@ -485,7 +485,7 @@ parse_opt(int key, char* arg, struct argp_state*)
|
||||||
|
|
||||||
namespace
|
namespace
|
||||||
{
|
{
|
||||||
class xtranslator_runner: public translator_runner
|
class xtranslator_runner final: public translator_runner
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
xtranslator_runner(spot::bdd_dict_ptr dict)
|
xtranslator_runner(spot::bdd_dict_ptr dict)
|
||||||
|
|
@ -821,7 +821,7 @@ namespace
|
||||||
typedef
|
typedef
|
||||||
std::unordered_set<spot::formula> fset_t;
|
std::unordered_set<spot::formula> fset_t;
|
||||||
|
|
||||||
class processor: public job_processor
|
class processor final: public job_processor
|
||||||
{
|
{
|
||||||
spot::bdd_dict_ptr dict = spot::make_bdd_dict();
|
spot::bdd_dict_ptr dict = spot::make_bdd_dict();
|
||||||
xtranslator_runner runner;
|
xtranslator_runner runner;
|
||||||
|
|
|
||||||
|
|
@ -125,7 +125,7 @@ parse_opt(int key, char* arg, struct argp_state*)
|
||||||
|
|
||||||
namespace
|
namespace
|
||||||
{
|
{
|
||||||
class xtranslator_runner: public translator_runner
|
class xtranslator_runner final: public translator_runner
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
xtranslator_runner(spot::bdd_dict_ptr dict)
|
xtranslator_runner(spot::bdd_dict_ptr dict)
|
||||||
|
|
@ -209,7 +209,7 @@ namespace
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
class processor: public job_processor
|
class processor final: public job_processor
|
||||||
{
|
{
|
||||||
spot::bdd_dict_ptr dict = spot::make_bdd_dict();
|
spot::bdd_dict_ptr dict = spot::make_bdd_dict();
|
||||||
xtranslator_runner runner;
|
xtranslator_runner runner;
|
||||||
|
|
|
||||||
|
|
@ -465,7 +465,7 @@ std::unordered_set<spot::formula> fset_t;
|
||||||
|
|
||||||
namespace
|
namespace
|
||||||
{
|
{
|
||||||
class ltl_processor: public job_processor
|
class ltl_processor final: public job_processor
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
spot::tl_simplifier& simpl;
|
spot::tl_simplifier& simpl;
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
// -*- coding: utf-8 -*-
|
// -*- coding: utf-8 -*-
|
||||||
// Copyright (C) 2014, 2015 Laboratoire de Recherche et Développement de
|
// Copyright (C) 2014, 2015, 2016 Laboratoire de Recherche et
|
||||||
// l'Epita (LRDE).
|
// Développement de l'Epita (LRDE).
|
||||||
//
|
//
|
||||||
// This file is part of Spot, a model checking library.
|
// This file is part of Spot, a model checking library.
|
||||||
//
|
//
|
||||||
|
|
@ -108,7 +108,7 @@ static const argp_child children[] = {
|
||||||
|
|
||||||
namespace
|
namespace
|
||||||
{
|
{
|
||||||
class mutate_processor: public job_processor
|
class mutate_processor final: public job_processor
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
int
|
int
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
// -*- coding: utf-8 -*-
|
// -*- coding: utf-8 -*-
|
||||||
// Copyright (C) 2011, 2013, 2014, 2015 Laboratoire de Recherche et
|
// Copyright (C) 2011, 2013, 2014, 2015, 2016 Laboratoire de Recherche
|
||||||
// Développement de l'Epita (LRDE).
|
// et Développement de l'Epita (LRDE).
|
||||||
//
|
//
|
||||||
// This file is part of Spot, a model checking library.
|
// This file is part of Spot, a model checking library.
|
||||||
//
|
//
|
||||||
|
|
@ -326,7 +326,7 @@ namespace spot
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
class int_array_array_compression:
|
class int_array_array_compression final:
|
||||||
public stream_compression_base<int_array_array_compression>
|
public stream_compression_base<int_array_array_compression>
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
@ -497,7 +497,7 @@ namespace spot
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
class int_array_array_decompression:
|
class int_array_array_decompression final:
|
||||||
public stream_decompression_base<int_array_array_decompression>
|
public stream_decompression_base<int_array_array_decompression>
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
// -*- coding: utf-8 -*-
|
// -*- coding: utf-8 -*-
|
||||||
// Copyright (C) 2011, 2013, 2014 Laboratoire de Recherche et
|
// Copyright (C) 2011, 2013, 2014, 2016 Laboratoire de Recherche et
|
||||||
// Développement de l'Epita (LRDE).
|
// Développement de l'Epita (LRDE).
|
||||||
//
|
//
|
||||||
// This file is part of Spot, a model checking library.
|
// This file is part of Spot, a model checking library.
|
||||||
|
|
@ -184,7 +184,7 @@ namespace spot
|
||||||
unsigned int bits_left_;
|
unsigned int bits_left_;
|
||||||
};
|
};
|
||||||
|
|
||||||
class int_array_vector_compression:
|
class int_array_vector_compression final:
|
||||||
public stream_compression_base<int_array_vector_compression>
|
public stream_compression_base<int_array_vector_compression>
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
@ -233,7 +233,7 @@ namespace spot
|
||||||
std::vector<unsigned int>* result_;
|
std::vector<unsigned int>* result_;
|
||||||
};
|
};
|
||||||
|
|
||||||
class int_vector_vector_compression:
|
class int_vector_vector_compression final:
|
||||||
public stream_compression_base<int_vector_vector_compression>
|
public stream_compression_base<int_vector_vector_compression>
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
@ -277,7 +277,7 @@ namespace spot
|
||||||
std::vector<unsigned int>& output_;
|
std::vector<unsigned int>& output_;
|
||||||
};
|
};
|
||||||
|
|
||||||
class int_array_array_compression:
|
class int_array_array_compression final:
|
||||||
public stream_compression_base<int_array_array_compression>
|
public stream_compression_base<int_array_array_compression>
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
@ -521,7 +521,7 @@ namespace spot
|
||||||
unsigned int buffer_bits_;
|
unsigned int buffer_bits_;
|
||||||
};
|
};
|
||||||
|
|
||||||
class int_vector_vector_decompression:
|
class int_vector_vector_decompression final:
|
||||||
public stream_decompression_base<int_vector_vector_decompression>
|
public stream_decompression_base<int_vector_vector_decompression>
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
@ -572,7 +572,7 @@ namespace spot
|
||||||
size_t size_;
|
size_t size_;
|
||||||
};
|
};
|
||||||
|
|
||||||
class int_vector_array_decompression:
|
class int_vector_array_decompression final:
|
||||||
public stream_decompression_base<int_vector_array_decompression>
|
public stream_decompression_base<int_vector_array_decompression>
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
@ -622,7 +622,7 @@ namespace spot
|
||||||
size_t size_;
|
size_t size_;
|
||||||
};
|
};
|
||||||
|
|
||||||
class int_array_array_decompression:
|
class int_array_array_decompression final:
|
||||||
public stream_decompression_base<int_array_array_decompression>
|
public stream_decompression_base<int_array_array_decompression>
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
|
||||||
|
|
@ -30,7 +30,7 @@ namespace spot
|
||||||
{
|
{
|
||||||
namespace
|
namespace
|
||||||
{
|
{
|
||||||
class dotty_bfs : public ta_reachable_iterator_breadth_first
|
class dotty_bfs final: public ta_reachable_iterator_breadth_first
|
||||||
{
|
{
|
||||||
void
|
void
|
||||||
parse_opts(const char* options)
|
parse_opts(const char* options)
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
// -*- coding: utf-8 -*-
|
// -*- coding: utf-8 -*-
|
||||||
// Copyright (C) 2010, 2014 Laboratoire de Recherche et Développement
|
// Copyright (C) 2010, 2014, 2016 Laboratoire de Recherche et Développement
|
||||||
// de l'Epita (LRDE).
|
// de l'Epita (LRDE).
|
||||||
//
|
//
|
||||||
// This file is part of Spot, a model checking library.
|
// This file is part of Spot, a model checking library.
|
||||||
|
|
@ -26,7 +26,8 @@ namespace spot
|
||||||
{
|
{
|
||||||
namespace
|
namespace
|
||||||
{
|
{
|
||||||
class states_set_builder_bfs : public ta_reachable_iterator_breadth_first
|
class states_set_builder_bfs final:
|
||||||
|
public ta_reachable_iterator_breadth_first
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
states_set_builder_bfs(const const_ta_ptr& a) :
|
states_set_builder_bfs(const const_ta_ptr& a) :
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
// -*- coding: utf-8 -*-
|
// -*- coding: utf-8 -*-
|
||||||
// Copyright (C) 2008, 2014, 2015 Laboratoire de Recherche et
|
// Copyright (C) 2008, 2014, 2015, 2016 Laboratoire de Recherche et
|
||||||
// Développement de l'Epita (LRDE).
|
// Développement de l'Epita (LRDE).
|
||||||
// Copyright (C) 2004 Laboratoire d'Informatique de Paris 6 (LIP6),
|
// Copyright (C) 2004 Laboratoire d'Informatique de Paris 6 (LIP6),
|
||||||
// département Systèmes Répartis Coopératifs (SRC), Université Pierre
|
// département Systèmes Répartis Coopératifs (SRC), Université Pierre
|
||||||
|
|
@ -29,7 +29,7 @@ namespace spot
|
||||||
{
|
{
|
||||||
namespace
|
namespace
|
||||||
{
|
{
|
||||||
class stats_bfs : public ta_reachable_iterator_breadth_first
|
class stats_bfs final: public ta_reachable_iterator_breadth_first
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
stats_bfs(const const_ta_ptr a, ta_statistics& s) :
|
stats_bfs(const const_ta_ptr a, ta_statistics& s) :
|
||||||
|
|
|
||||||
|
|
@ -229,7 +229,7 @@ namespace spot
|
||||||
|
|
||||||
// Convert the formula's syntax tree into an undirected graph
|
// Convert the formula's syntax tree into an undirected graph
|
||||||
// labeled by subformulas.
|
// labeled by subformulas.
|
||||||
class formula_to_fgraph final
|
class formula_to_fgraph
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
fgraph& g;
|
fgraph& g;
|
||||||
|
|
|
||||||
|
|
@ -39,7 +39,7 @@ namespace spot
|
||||||
typedef std::vector<formula> vec;
|
typedef std::vector<formula> vec;
|
||||||
|
|
||||||
// The name of this class is public, but not its contents.
|
// The name of this class is public, but not its contents.
|
||||||
class tl_simplifier_cache
|
class tl_simplifier_cache final
|
||||||
{
|
{
|
||||||
typedef std::unordered_map<formula, formula> f2f_map;
|
typedef std::unordered_map<formula, formula> f2f_map;
|
||||||
typedef std::unordered_map<formula, bdd> f2b_map;
|
typedef std::unordered_map<formula, bdd> f2b_map;
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
// -*- coding: utf-8 -*-
|
// -*- coding: utf-8 -*-
|
||||||
// Copyright (C) 2012, 2014, 2015 Laboratoire de Recherche et
|
// Copyright (C) 2012, 2014, 2015, 2016 Laboratoire de Recherche et
|
||||||
// Developpement de l'Epita (LRDE).
|
// Developpement de l'Epita (LRDE).
|
||||||
//
|
//
|
||||||
// This file is part of Spot, a model checking library.
|
// This file is part of Spot, a model checking library.
|
||||||
|
|
@ -26,7 +26,7 @@ namespace spot
|
||||||
// E° if bounded=false
|
// E° if bounded=false
|
||||||
// E^□ if nounded=true
|
// E^□ if nounded=true
|
||||||
template<bool bounded>
|
template<bool bounded>
|
||||||
class snf_visitor
|
class snf_visitor final
|
||||||
{
|
{
|
||||||
protected:
|
protected:
|
||||||
formula result_;
|
formula result_;
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
// -*- coding: utf-8 -*-
|
// -*- coding: utf-8 -*-
|
||||||
// Copyright (C) 2009, 2012, 2013, 2014, 2015 Laboratoire de Recherche
|
// Copyright (C) 2009, 2012, 2013, 2014, 2015, 2016 Laboratoire de
|
||||||
// et Développement de l'Epita (LRDE).
|
// Recherche et Développement de l'Epita (LRDE).
|
||||||
// Copyright (C) 2003, 2004, 2005, 2006 Laboratoire d'Informatique de
|
// Copyright (C) 2003, 2004, 2005, 2006 Laboratoire d'Informatique de
|
||||||
// Paris 6 (LIP6), département Systèmes Répartis Coopératifs (SRC),
|
// Paris 6 (LIP6), département Systèmes Répartis Coopératifs (SRC),
|
||||||
// Université Pierre et Marie Curie.
|
// Université Pierre et Marie Curie.
|
||||||
|
|
@ -39,7 +39,7 @@ namespace spot
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
class bdd_dict_priv: public bdd_allocator
|
class bdd_dict_priv final: public bdd_allocator
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -147,7 +147,8 @@ namespace spot
|
||||||
|
|
||||||
|
|
||||||
/// \brief Iterate over the successors of a product computed on the fly.
|
/// \brief Iterate over the successors of a product computed on the fly.
|
||||||
class twa_succ_iterator_product: public twa_succ_iterator_product_common
|
class twa_succ_iterator_product final:
|
||||||
|
public twa_succ_iterator_product_common
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
twa_succ_iterator_product(twa_succ_iterator* left,
|
twa_succ_iterator_product(twa_succ_iterator* left,
|
||||||
|
|
@ -212,7 +213,7 @@ namespace spot
|
||||||
|
|
||||||
/// Iterate over the successors of a product computed on the fly.
|
/// Iterate over the successors of a product computed on the fly.
|
||||||
/// This one assumes that LEFT is an iterator over a Kripke structure
|
/// This one assumes that LEFT is an iterator over a Kripke structure
|
||||||
class twa_succ_iterator_product_kripke:
|
class twa_succ_iterator_product_kripke final:
|
||||||
public twa_succ_iterator_product_common
|
public twa_succ_iterator_product_common
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
|
||||||
|
|
@ -57,7 +57,7 @@ namespace spot
|
||||||
|
|
||||||
// Acceptance set common to all outgoing edges (of the same
|
// Acceptance set common to all outgoing edges (of the same
|
||||||
// SCC -- we do not care about the other) of some state.
|
// SCC -- we do not care about the other) of some state.
|
||||||
class outgoing_acc
|
class outgoing_acc final
|
||||||
{
|
{
|
||||||
const_twa_graph_ptr a_;
|
const_twa_graph_ptr a_;
|
||||||
typedef std::tuple<acc_cond::mark_t,
|
typedef std::tuple<acc_cond::mark_t,
|
||||||
|
|
@ -125,7 +125,7 @@ namespace spot
|
||||||
};
|
};
|
||||||
|
|
||||||
// Order of accepting sets (for one SCC)
|
// Order of accepting sets (for one SCC)
|
||||||
class acc_order
|
class acc_order final
|
||||||
{
|
{
|
||||||
std::vector<unsigned> order_;
|
std::vector<unsigned> order_;
|
||||||
acc_cond::mark_t found_;
|
acc_cond::mark_t found_;
|
||||||
|
|
@ -162,7 +162,7 @@ namespace spot
|
||||||
};
|
};
|
||||||
|
|
||||||
// Accepting order for each SCC
|
// Accepting order for each SCC
|
||||||
class scc_orders
|
class scc_orders final
|
||||||
{
|
{
|
||||||
std::map<int, acc_order> orders_;
|
std::map<int, acc_order> orders_;
|
||||||
bool skip_levels_;
|
bool skip_levels_;
|
||||||
|
|
|
||||||
|
|
@ -46,7 +46,7 @@ namespace spot
|
||||||
std::vector<size_t>& nb_braces);
|
std::vector<size_t>& nb_braces);
|
||||||
};
|
};
|
||||||
|
|
||||||
class safra_state
|
class safra_state final
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
using state_t = unsigned;
|
using state_t = unsigned;
|
||||||
|
|
|
||||||
|
|
@ -44,7 +44,7 @@ namespace spot
|
||||||
{
|
{
|
||||||
constexpr int MAX_BULLET = 20;
|
constexpr int MAX_BULLET = 20;
|
||||||
|
|
||||||
class dotty_output
|
class dotty_output final
|
||||||
{
|
{
|
||||||
std::ostream& os_;
|
std::ostream& os_;
|
||||||
bool opt_force_acc_trans_ = false;
|
bool opt_force_acc_trans_ = false;
|
||||||
|
|
|
||||||
|
|
@ -280,7 +280,7 @@ namespace spot
|
||||||
|
|
||||||
namespace
|
namespace
|
||||||
{
|
{
|
||||||
class shortest_path: public bfs_steps
|
class shortest_path final: public bfs_steps
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
shortest_path(const const_twa_ptr& a)
|
shortest_path(const const_twa_ptr& a)
|
||||||
|
|
|
||||||
|
|
@ -28,7 +28,7 @@ namespace spot
|
||||||
{
|
{
|
||||||
namespace
|
namespace
|
||||||
{
|
{
|
||||||
class shortest_path: public bfs_steps
|
class shortest_path final: public bfs_steps
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
shortest_path(const state_set* t,
|
shortest_path(const state_set* t,
|
||||||
|
|
|
||||||
|
|
@ -102,7 +102,7 @@ namespace spot
|
||||||
|
|
||||||
class translate_dict;
|
class translate_dict;
|
||||||
|
|
||||||
class ratexp_to_dfa
|
class ratexp_to_dfa final
|
||||||
{
|
{
|
||||||
typedef twa_graph::namer<formula> namer;
|
typedef twa_graph::namer<formula> namer;
|
||||||
public:
|
public:
|
||||||
|
|
@ -129,7 +129,7 @@ namespace spot
|
||||||
// "a" variables are promises (written "a" in the paper)
|
// "a" variables are promises (written "a" in the paper)
|
||||||
// "next" variables are X's operands (the "r_X" variables from the paper)
|
// "next" variables are X's operands (the "r_X" variables from the paper)
|
||||||
// "var" variables are atomic propositions.
|
// "var" variables are atomic propositions.
|
||||||
class translate_dict
|
class translate_dict final
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
||||||
|
|
@ -1063,7 +1063,7 @@ namespace spot
|
||||||
// Duret-Lutz's paper "LTL Translation Improvements in Spot 1.0"
|
// Duret-Lutz's paper "LTL Translation Improvements in Spot 1.0"
|
||||||
// (IJCCBS 2014), for the optimization. The PSL stuff is
|
// (IJCCBS 2014), for the optimization. The PSL stuff is
|
||||||
// unpublished yet.
|
// unpublished yet.
|
||||||
class ltl_trad_visitor
|
class ltl_trad_visitor final
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
ltl_trad_visitor(translate_dict& dict, bool mark_all = false,
|
ltl_trad_visitor(translate_dict& dict, bool mark_all = false,
|
||||||
|
|
@ -1663,7 +1663,7 @@ namespace spot
|
||||||
|
|
||||||
// Check whether a formula can be part of a fair loop.
|
// Check whether a formula can be part of a fair loop.
|
||||||
// Cache the result for efficiency.
|
// Cache the result for efficiency.
|
||||||
class possible_fair_loop_checker
|
class possible_fair_loop_checker final
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
bool
|
bool
|
||||||
|
|
@ -1680,7 +1680,7 @@ namespace spot
|
||||||
pfl_map pfl_;
|
pfl_map pfl_;
|
||||||
};
|
};
|
||||||
|
|
||||||
class formula_canonizer
|
class formula_canonizer final
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
formula_canonizer(translate_dict& d,
|
formula_canonizer(translate_dict& d,
|
||||||
|
|
|
||||||
|
|
@ -47,7 +47,7 @@ namespace spot
|
||||||
/// \brief Emptiness checker on spot::tgba automata having at most one
|
/// \brief Emptiness checker on spot::tgba automata having at most one
|
||||||
/// acceptance condition (i.e. a TBA).
|
/// acceptance condition (i.e. a TBA).
|
||||||
template <typename heap>
|
template <typename heap>
|
||||||
class magic_search_ : public emptiness_check, public ec_statistics
|
class magic_search_ final : public emptiness_check, public ec_statistics
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
/// \brief Initialize the Magic Search algorithm on the automaton \a a
|
/// \brief Initialize the Magic Search algorithm on the automaton \a a
|
||||||
|
|
@ -424,12 +424,12 @@ namespace spot
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
class explicit_magic_search_heap
|
class explicit_magic_search_heap final
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
enum { Safe = 1 };
|
enum { Safe = 1 };
|
||||||
|
|
||||||
class color_ref
|
class color_ref final
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
color_ref(color* c) :p(c)
|
color_ref(color* c) :p(c)
|
||||||
|
|
@ -507,12 +507,12 @@ namespace spot
|
||||||
state_map<color> h;
|
state_map<color> h;
|
||||||
};
|
};
|
||||||
|
|
||||||
class bsh_magic_search_heap
|
class bsh_magic_search_heap final
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
enum { Safe = 0 };
|
enum { Safe = 0 };
|
||||||
|
|
||||||
class color_ref
|
class color_ref final
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
color_ref(unsigned char *b, unsigned char o): base(b), offset(o*2)
|
color_ref(unsigned char *b, unsigned char o): base(b), offset(o*2)
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
// -*- coding: utf-8 -*-
|
// -*- coding: utf-8 -*-
|
||||||
// Copyright (C) 2009, 2011, 2012, 2014, 2015 Laboratoire de Recherche et
|
// Copyright (C) 2009, 2011, 2012, 2014, 2015, 2016 Laboratoire de
|
||||||
// Développement de l'Epita (LRDE).
|
// Recherche et Développement de l'Epita (LRDE).
|
||||||
// Copyright (C) 2004 Laboratoire d'Informatique de Paris 6 (LIP6),
|
// Copyright (C) 2004 Laboratoire d'Informatique de Paris 6 (LIP6),
|
||||||
// département Systèmes Répartis Coopératifs (SRC), Université Pierre
|
// département Systèmes Répartis Coopératifs (SRC), Université Pierre
|
||||||
// et Marie Curie.
|
// et Marie Curie.
|
||||||
|
|
@ -33,7 +33,7 @@ namespace spot
|
||||||
{
|
{
|
||||||
namespace
|
namespace
|
||||||
{
|
{
|
||||||
class never_claim_output
|
class never_claim_output final
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
std::ostream& os_;
|
std::ostream& os_;
|
||||||
|
|
|
||||||
|
|
@ -325,7 +325,7 @@ namespace spot
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
class result_from_stack: public emptiness_check_result,
|
class result_from_stack final: public emptiness_check_result,
|
||||||
public acss_statistics
|
public acss_statistics
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
@ -436,14 +436,14 @@ namespace spot
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
class explicit_se05_search_heap
|
class explicit_se05_search_heap final
|
||||||
{
|
{
|
||||||
typedef state_set hcyan_type;
|
typedef state_set hcyan_type;
|
||||||
typedef state_map<color> hash_type;
|
typedef state_map<color> hash_type;
|
||||||
public:
|
public:
|
||||||
enum { Safe = 1 };
|
enum { Safe = 1 };
|
||||||
|
|
||||||
class color_ref
|
class color_ref final
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
color_ref(hash_type* h, hcyan_type* hc, const state* s)
|
color_ref(hash_type* h, hcyan_type* hc, const state* s)
|
||||||
|
|
@ -569,7 +569,7 @@ namespace spot
|
||||||
hcyan_type hc; // associate to each cyan state its weight
|
hcyan_type hc; // associate to each cyan state its weight
|
||||||
};
|
};
|
||||||
|
|
||||||
class bsh_se05_search_heap
|
class bsh_se05_search_heap final
|
||||||
{
|
{
|
||||||
private:
|
private:
|
||||||
typedef std::unordered_set<const state*,
|
typedef std::unordered_set<const state*,
|
||||||
|
|
@ -577,7 +577,7 @@ namespace spot
|
||||||
public:
|
public:
|
||||||
enum { Safe = 0 };
|
enum { Safe = 0 };
|
||||||
|
|
||||||
class color_ref
|
class color_ref final
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
color_ref(hcyan_type* h, const state* st,
|
color_ref(hcyan_type* h, const state* st,
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
// -*- coding: utf-8 -*-
|
// -*- coding: utf-8 -*-
|
||||||
// Copyright (C) 2012, 2013, 2014, 2015 Laboratoire de Recherche et
|
// Copyright (C) 2012, 2013, 2014, 2015, 2016 Laboratoire de Recherche
|
||||||
// Développement de l'Epita (LRDE).
|
// et Développement de l'Epita (LRDE).
|
||||||
//
|
//
|
||||||
// This file is part of Spot, a model checking library.
|
// This file is part of Spot, a model checking library.
|
||||||
//
|
//
|
||||||
|
|
@ -155,7 +155,7 @@ namespace spot
|
||||||
// The direct_simulation. If Cosimulation is true, we are doing a
|
// The direct_simulation. If Cosimulation is true, we are doing a
|
||||||
// cosimulation.
|
// cosimulation.
|
||||||
template <bool Cosimulation, bool Sba>
|
template <bool Cosimulation, bool Sba>
|
||||||
class direct_simulation
|
class direct_simulation final
|
||||||
{
|
{
|
||||||
protected:
|
protected:
|
||||||
// Shortcut used in update_po and go_to_next_it.
|
// Shortcut used in update_po and go_to_next_it.
|
||||||
|
|
|
||||||
|
|
@ -276,10 +276,10 @@ namespace spot
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
class explicit_tau03_search_heap
|
class explicit_tau03_search_heap final
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
class color_ref
|
class color_ref final
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
color_ref(color* c, acc_cond::mark_t* a) :p(c), acc(a)
|
color_ref(color* c, acc_cond::mark_t* a) :p(c), acc(a)
|
||||||
|
|
|
||||||
|
|
@ -395,12 +395,12 @@ namespace spot
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
class explicit_tau03_opt_search_heap
|
class explicit_tau03_opt_search_heap final
|
||||||
{
|
{
|
||||||
typedef state_map<std::pair<weight, acc_cond::mark_t>> hcyan_type;
|
typedef state_map<std::pair<weight, acc_cond::mark_t>> hcyan_type;
|
||||||
typedef state_map<std::pair<color, acc_cond::mark_t>> hash_type;
|
typedef state_map<std::pair<color, acc_cond::mark_t>> hash_type;
|
||||||
public:
|
public:
|
||||||
class color_ref
|
class color_ref final
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
color_ref(hash_type* h, hcyan_type* hc, const state* s,
|
color_ref(hash_type* h, hcyan_type* hc, const state* s,
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue