Make bdd_dict a shared pointer.

* src/tgba/bdddict.hh (bdd_dict_ptr): New type.
(make_bdd_dict): New function.
* iface/dve2/dve2.cc, iface/dve2/dve2.hh, iface/dve2/dve2check.cc,
src/bin/dstar2tgba.cc, src/bin/ltlcross.cc,
src/dstarparse/dstarparse.yy, src/dstarparse/public.hh,
src/graphtest/tgbagraph.cc, src/kripke/kripkeexplicit.cc,
src/kripke/kripkeexplicit.hh, src/kripke/kripkeprint.cc,
src/kripkeparse/kripkeparse.yy, src/kripkeparse/public.hh,
src/kripketest/parse_print_test.cc, src/ltlvisit/apcollect.cc,
src/ltlvisit/contain.cc, src/ltlvisit/contain.hh,
src/ltlvisit/simplify.cc, src/ltlvisit/simplify.hh,
src/neverparse/neverclaimparse.yy, src/neverparse/public.hh,
src/priv/accmap.hh, src/saba/saba.hh, src/saba/sabacomplementtgba.cc,
src/saba/sabacomplementtgba.hh, src/sabatest/sabacomplementtgba.cc,
src/ta/ta.hh, src/ta/taexplicit.cc, src/ta/taexplicit.hh,
src/ta/taproduct.cc, src/ta/taproduct.hh, src/ta/tgtaexplicit.cc,
src/ta/tgtaexplicit.hh, src/taalgos/dotty.cc, src/tgba/bddprint.cc,
src/tgba/bddprint.hh, src/tgba/formula2bdd.cc, src/tgba/formula2bdd.hh,
src/tgba/taatgba.cc, src/tgba/taatgba.hh, src/tgba/tgba.hh,
src/tgba/tgbagraph.hh, src/tgba/tgbakvcomplement.cc,
src/tgba/tgbakvcomplement.hh, src/tgba/tgbaproduct.cc,
src/tgba/tgbaproduct.hh, src/tgba/tgbaproxy.cc, src/tgba/tgbaproxy.hh,
src/tgba/tgbasafracomplement.cc, src/tgba/tgbasafracomplement.hh,
src/tgba/tgbascc.cc, src/tgba/tgbascc.hh, src/tgba/tgbasgba.cc,
src/tgba/tgbasgba.hh, src/tgba/tgbaunion.cc, src/tgba/tgbaunion.hh,
src/tgba/wdbacomp.cc, src/tgbaalgos/compsusp.cc,
src/tgbaalgos/compsusp.hh, src/tgbaalgos/degen.cc,
src/tgbaalgos/dtbasat.cc, src/tgbaalgos/dtgbasat.cc,
src/tgbaalgos/emptiness.cc, src/tgbaalgos/lbtt.cc,
src/tgbaalgos/lbtt.hh, src/tgbaalgos/ltl2taa.cc,
src/tgbaalgos/ltl2taa.hh, src/tgbaalgos/ltl2tgba_fm.cc,
src/tgbaalgos/ltl2tgba_fm.hh, src/tgbaalgos/randomgraph.cc,
src/tgbaalgos/randomgraph.hh, src/tgbaalgos/save.cc,
src/tgbaalgos/translate.cc, src/tgbaalgos/translate.hh,
src/tgbaalgos/word.cc, src/tgbaalgos/word.hh, src/tgbaparse/public.hh,
src/tgbaparse/tgbaparse.yy, src/tgbatest/complementation.cc,
src/tgbatest/explprod.cc, src/tgbatest/ltl2tgba.cc,
src/tgbatest/ltlprod.cc, src/tgbatest/maskacc.cc,
src/tgbatest/powerset.cc, src/tgbatest/randtgba.cc,
src/tgbatest/taatgba.cc, src/tgbatest/tgbaread.cc,
src/tgbatest/tripprod.cc, wrap/python/ajax/spot.in,
wrap/python/tests/alarm.py, wrap/python/tests/ltl2tgba.py,
wrap/python/tests/parsetgba.py: Update to use bdd_dict_ptr and
make_bdd_dict().
This commit is contained in:
Alexandre Duret-Lutz 2014-08-13 16:55:25 +02:00
parent 10e5c62386
commit dc5ad78b3e
93 changed files with 199 additions and 245 deletions

View file

@ -125,7 +125,7 @@ int main(int argc, char* argv[])
return 1;
}
spot::bdd_dict* dict = new spot::bdd_dict();
auto dict = spot::make_bdd_dict();
if (print_automaton || print_safra)
{
spot::ltl::environment& env(spot::ltl::default_environment::instance());
@ -318,7 +318,5 @@ int main(int argc, char* argv[])
}
delete dict;
return return_value;
}

View file

@ -43,7 +43,7 @@ main(int argc, char** argv)
if (argc != 3)
syntax(argv[0]);
spot::bdd_dict* dict = new spot::bdd_dict();
auto dict = spot::make_bdd_dict();
spot::ltl::environment& env(spot::ltl::default_environment::instance());
spot::tgba_parse_error_list pel1;
@ -67,6 +67,5 @@ main(int argc, char** argv)
delete a1;
delete a2;
assert(spot::ltl::atomic_prop::instance_count() == 0);
delete dict;
return exit_code;
}

View file

@ -381,7 +381,7 @@ main(int argc, char** argv)
spot::ltl::atomic_prop_set* unobservables = 0;
spot::tgba* system_aut = 0;
const spot::tgba* product_to_free = 0;
spot::bdd_dict* dict = new spot::bdd_dict();
auto dict = spot::make_bdd_dict();
spot::timer_map tm;
bool use_timer = false;
bool reduction_dir_sim = false;
@ -1018,7 +1018,6 @@ main(int argc, char** argv)
if (spot::format_tgba_parse_errors(std::cerr, input, pel))
{
delete to_free;
delete dict;
return 2;
}
e->merge_transitions();
@ -1035,7 +1034,6 @@ main(int argc, char** argv)
if (spot::format_neverclaim_parse_errors(std::cerr, input, pel))
{
delete to_free;
delete dict;
return 2;
}
assume_sba = true;
@ -1053,7 +1051,6 @@ main(int argc, char** argv)
if (!*f)
{
std::cerr << "cannot open " << input << std::endl;
delete dict;
return 2;
}
}
@ -1067,7 +1064,6 @@ main(int argc, char** argv)
if (!to_free)
{
std::cerr << error << std::endl;
delete dict;
return 2;
}
}
@ -1083,7 +1079,6 @@ main(int argc, char** argv)
if (spot::format_dstar_parse_errors(std::cerr, input, pel))
{
delete to_free;
delete dict;
return 2;
}
tm.start("dstar2tgba");
@ -1978,6 +1973,5 @@ main(int argc, char** argv)
assert(spot::ltl::unop::instance_count() == 0);
assert(spot::ltl::binop::instance_count() == 0);
assert(spot::ltl::multop::instance_count() == 0);
delete dict;
return exit_code;
}

View file

@ -58,7 +58,7 @@ main(int argc, char** argv)
if (spot::ltl::format_parse_errors(std::cerr, argv[2], pel2))
return 2;
spot::bdd_dict* dict = new spot::bdd_dict();
auto dict = spot::make_bdd_dict();
{
auto a1 = spot::ltl_to_tgba_fm(f1, dict);
auto a2 = spot::ltl_to_tgba_fm(f2, dict);
@ -75,6 +75,5 @@ main(int argc, char** argv)
assert(spot::ltl::unop::instance_count() == 0);
assert(spot::ltl::binop::instance_count() == 0);
assert(spot::ltl::multop::instance_count() == 0);
delete dict;
return exit_code;
}

View file

@ -40,7 +40,7 @@ main(int argc, char** argv)
if (argc != 2)
syntax(argv[0]);
spot::bdd_dict* dict = new spot::bdd_dict();
auto dict = spot::make_bdd_dict();
spot::ltl::environment& env(spot::ltl::default_environment::instance());
spot::tgba_parse_error_list pel;
@ -65,6 +65,5 @@ main(int argc, char** argv)
assert(spot::ltl::atomic_prop::instance_count() != 0);
delete aut;
assert(spot::ltl::atomic_prop::instance_count() == 0);
delete dict;
return exit_code;
}

View file

@ -44,7 +44,7 @@ main(int argc, char** argv)
if (argc != 2)
syntax(argv[0]);
spot::bdd_dict* dict = new spot::bdd_dict();
auto dict = spot::make_bdd_dict();
spot::ltl::environment& env(spot::ltl::default_environment::instance());
spot::tgba_parse_error_list pel;
@ -67,6 +67,5 @@ main(int argc, char** argv)
assert(spot::ltl::atomic_prop::instance_count() != 0);
delete a;
assert(spot::ltl::atomic_prop::instance_count() == 0);
delete dict;
return exit_code;
}

View file

@ -585,7 +585,7 @@ main(int argc, char** argv)
spot::ltl::environment& env(spot::ltl::default_environment::instance());
spot::ltl::atomic_prop_set* ap = new spot::ltl::atomic_prop_set;
spot::bdd_dict* dict = new spot::bdd_dict();
auto dict = spot::make_bdd_dict();
spot::ltl::ltl_simplifier_options simpopt(true, true, true, true, true);
spot::ltl::ltl_simplifier simp(simpopt);
@ -1322,6 +1322,5 @@ main(int argc, char** argv)
delete ap;
delete apf;
delete dict;
return exit_code;
}

View file

@ -1,4 +1,5 @@
// Copyright (C) 2009 Laboratoire de Recherche et Développement
// -*- coding: utf-8 -*-
// Copyright (C) 2009, 2014 Laboratoire de Recherche et Développement
// de l'Epita (LRDE).
//
// This file is part of Spot, a model checking library.
@ -27,11 +28,9 @@
int
main()
{
spot::bdd_dict* dict = new spot::bdd_dict();
spot::ltl::default_environment& e =
spot::ltl::default_environment::instance();
spot::taa_tgba_string* a = new spot::taa_tgba_string(dict);
spot::taa_tgba_string* a = new spot::taa_tgba_string(spot::make_bdd_dict());
typedef spot::taa_tgba::transition trans;
@ -49,7 +48,6 @@ main()
spot::dotty_reachable(std::cout, a);
delete a;
delete dict;
assert(spot::ltl::atomic_prop::instance_count() == 0);
assert(spot::ltl::unop::instance_count() == 0);
assert(spot::ltl::binop::instance_count() == 0);

View file

@ -52,7 +52,7 @@ main(int argc, char** argv)
filename_index = 2;
}
spot::bdd_dict* dict = new spot::bdd_dict();
auto dict = spot::make_bdd_dict();
spot::ltl::environment& env(spot::ltl::default_environment::instance());
spot::tgba_parse_error_list pel;
@ -72,11 +72,9 @@ main(int argc, char** argv)
return 1;
}
delete dict;
assert(spot::ltl::atomic_prop::instance_count() == 0);
assert(spot::ltl::unop::instance_count() == 0);
assert(spot::ltl::binop::instance_count() == 0);
assert(spot::ltl::multop::instance_count() == 0);
return 0;
}

View file

@ -43,7 +43,7 @@ main(int argc, char** argv)
if (argc != 4)
syntax(argv[0]);
spot::bdd_dict* dict = new spot::bdd_dict();
auto dict = spot::make_bdd_dict();
spot::ltl::environment& env(spot::ltl::default_environment::instance());
spot::tgba_parse_error_list pel1;
@ -73,6 +73,5 @@ main(int argc, char** argv)
delete a2;
delete a3;
assert(spot::ltl::atomic_prop::instance_count() == 0);
delete dict;
return exit_code;
}