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:
Alexandre Duret-Lutz 2016-03-13 16:03:39 +01:00
parent 8814f16637
commit 2402c2141d
32 changed files with 78 additions and 76 deletions

View file

@ -57,7 +57,7 @@ namespace spot
// Acceptance set common to all outgoing edges (of the same
// SCC -- we do not care about the other) of some state.
class outgoing_acc
class outgoing_acc final
{
const_twa_graph_ptr a_;
typedef std::tuple<acc_cond::mark_t,
@ -125,7 +125,7 @@ namespace spot
};
// Order of accepting sets (for one SCC)
class acc_order
class acc_order final
{
std::vector<unsigned> order_;
acc_cond::mark_t found_;
@ -162,7 +162,7 @@ namespace spot
};
// Accepting order for each SCC
class scc_orders
class scc_orders final
{
std::map<int, acc_order> orders_;
bool skip_levels_;

View file

@ -46,7 +46,7 @@ namespace spot
std::vector<size_t>& nb_braces);
};
class safra_state
class safra_state final
{
public:
using state_t = unsigned;

View file

@ -44,7 +44,7 @@ namespace spot
{
constexpr int MAX_BULLET = 20;
class dotty_output
class dotty_output final
{
std::ostream& os_;
bool opt_force_acc_trans_ = false;

View file

@ -280,7 +280,7 @@ namespace spot
namespace
{
class shortest_path: public bfs_steps
class shortest_path final: public bfs_steps
{
public:
shortest_path(const const_twa_ptr& a)

View file

@ -28,7 +28,7 @@ namespace spot
{
namespace
{
class shortest_path: public bfs_steps
class shortest_path final: public bfs_steps
{
public:
shortest_path(const state_set* t,

View file

@ -102,7 +102,7 @@ namespace spot
class translate_dict;
class ratexp_to_dfa
class ratexp_to_dfa final
{
typedef twa_graph::namer<formula> namer;
public:
@ -129,7 +129,7 @@ namespace spot
// "a" variables are promises (written "a" in the paper)
// "next" variables are X's operands (the "r_X" variables from the paper)
// "var" variables are atomic propositions.
class translate_dict
class translate_dict final
{
public:
@ -1063,7 +1063,7 @@ namespace spot
// Duret-Lutz's paper "LTL Translation Improvements in Spot 1.0"
// (IJCCBS 2014), for the optimization. The PSL stuff is
// unpublished yet.
class ltl_trad_visitor
class ltl_trad_visitor final
{
public:
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.
// Cache the result for efficiency.
class possible_fair_loop_checker
class possible_fair_loop_checker final
{
public:
bool
@ -1680,7 +1680,7 @@ namespace spot
pfl_map pfl_;
};
class formula_canonizer
class formula_canonizer final
{
public:
formula_canonizer(translate_dict& d,

View file

@ -47,7 +47,7 @@ namespace spot
/// \brief Emptiness checker on spot::tgba automata having at most one
/// acceptance condition (i.e. a TBA).
template <typename heap>
class magic_search_ : public emptiness_check, public ec_statistics
class magic_search_ final : public emptiness_check, public ec_statistics
{
public:
/// \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:
enum { Safe = 1 };
class color_ref
class color_ref final
{
public:
color_ref(color* c) :p(c)
@ -507,12 +507,12 @@ namespace spot
state_map<color> h;
};
class bsh_magic_search_heap
class bsh_magic_search_heap final
{
public:
enum { Safe = 0 };
class color_ref
class color_ref final
{
public:
color_ref(unsigned char *b, unsigned char o): base(b), offset(o*2)

View file

@ -1,6 +1,6 @@
// -*- coding: utf-8 -*-
// Copyright (C) 2009, 2011, 2012, 2014, 2015 Laboratoire de Recherche et
// Développement de l'Epita (LRDE).
// Copyright (C) 2009, 2011, 2012, 2014, 2015, 2016 Laboratoire de
// Recherche et Développement de l'Epita (LRDE).
// Copyright (C) 2004 Laboratoire d'Informatique de Paris 6 (LIP6),
// département Systèmes Répartis Coopératifs (SRC), Université Pierre
// et Marie Curie.
@ -33,7 +33,7 @@ namespace spot
{
namespace
{
class never_claim_output
class never_claim_output final
{
public:
std::ostream& os_;

View file

@ -325,7 +325,7 @@ namespace spot
return false;
}
class result_from_stack: public emptiness_check_result,
class result_from_stack final: public emptiness_check_result,
public acss_statistics
{
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_map<color> hash_type;
public:
enum { Safe = 1 };
class color_ref
class color_ref final
{
public:
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
};
class bsh_se05_search_heap
class bsh_se05_search_heap final
{
private:
typedef std::unordered_set<const state*,
@ -577,7 +577,7 @@ namespace spot
public:
enum { Safe = 0 };
class color_ref
class color_ref final
{
public:
color_ref(hcyan_type* h, const state* st,

View file

@ -1,6 +1,6 @@
// -*- coding: utf-8 -*-
// Copyright (C) 2012, 2013, 2014, 2015 Laboratoire de Recherche et
// Développement de l'Epita (LRDE).
// Copyright (C) 2012, 2013, 2014, 2015, 2016 Laboratoire de Recherche
// et Développement de l'Epita (LRDE).
//
// 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
// cosimulation.
template <bool Cosimulation, bool Sba>
class direct_simulation
class direct_simulation final
{
protected:
// Shortcut used in update_po and go_to_next_it.

View file

@ -276,10 +276,10 @@ namespace spot
};
class explicit_tau03_search_heap
class explicit_tau03_search_heap final
{
public:
class color_ref
class color_ref final
{
public:
color_ref(color* c, acc_cond::mark_t* a) :p(c), acc(a)

View file

@ -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<color, acc_cond::mark_t>> hash_type;
public:
class color_ref
class color_ref final
{
public:
color_ref(hash_type* h, hcyan_type* hc, const state* s,