Make ResetCommand go through APISolver (#6172)
authorGereon Kremer <gereon.kremer@cs.rwth-aachen.de>
Thu, 1 Apr 2021 11:35:20 +0000 (13:35 +0200)
committerGitHub <noreply@github.com>
Thu, 1 Apr 2021 11:35:20 +0000 (06:35 -0500)
commitb371364633912a681696eb7bda4a631a74b0539d
tree7b257d1f56c1d073b0ed92d5d83a71226cd55acf
parenta1466978fbc328507406d4a121dab4d1a1047e1d
Make ResetCommand go through APISolver (#6172)

This PR changes ResetCommand to not call SmtEngine::reset but instead reconstruct the api::Solver object. This makes SmtEngine::reset obsolete and removes it, and moves the original options from SmtEngine to api::Solver.
The motivation for this change is twofold:

The ResetCommand should not use SmtEngine directly, but only through the API (i.e. Solver).
As soon as the statistics data lives within the registry, we need to re-register statistics after resetting the SmtEngine. We can now do this within the api::Solver constructor.
src/api/cvc4cpp.cpp
src/api/cvc4cpp.h
src/smt/command.cpp
src/smt/smt_engine.cpp
src/smt/smt_engine.h