summaryrefslogtreecommitdiff
path: root/src/smt/smt_engine.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/smt/smt_engine.cpp')
-rw-r--r--src/smt/smt_engine.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/smt/smt_engine.cpp b/src/smt/smt_engine.cpp
index e97adb1d2..c00112cd0 100644
--- a/src/smt/smt_engine.cpp
+++ b/src/smt/smt_engine.cpp
@@ -70,13 +70,23 @@ SmtEngine::SmtEngine(ExprManager* em, const Options* opts) throw () :
d_options(opts) {
NodeManagerScope nms(d_nodeManager);
+
d_decisionEngine = new DecisionEngine;
d_theoryEngine = new TheoryEngine(this, d_ctxt);
d_propEngine = new PropEngine(opts, d_decisionEngine, d_theoryEngine, d_ctxt);
}
+void SmtEngine::shutdown() {
+ d_propEngine->shutdown();
+ d_theoryEngine->shutdown();
+ d_decisionEngine->shutdown();
+}
+
SmtEngine::~SmtEngine() {
NodeManagerScope nms(d_nodeManager);
+
+ shutdown();
+
delete d_propEngine;
delete d_theoryEngine;
delete d_decisionEngine;
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback