diff options
author | Andrew Reynolds <andrew.j.reynolds@gmail.com> | 2021-03-15 13:17:19 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-03-15 18:17:19 +0000 |
commit | 6d060743830ab21dc970444688fe1dc2ad34494f (patch) | |
tree | ee51b9642df2f12cec969a665472074c17e8457e /src/theory/quantifiers/term_registry.cpp | |
parent | 7d09d8bffc4c055900ddf933db37355ec6258b06 (diff) |
Reorganizing initialization of term registry in quantifiers (#6127)
This is in preparation for moving several utilities into the quantifiers inference manager.
This PR moves ownership of TermRegistry and QuantifiersRegistry to TheoryQuantifiers from QuantifiersEngine.
Diffstat (limited to 'src/theory/quantifiers/term_registry.cpp')
-rw-r--r-- | src/theory/quantifiers/term_registry.cpp | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/src/theory/quantifiers/term_registry.cpp b/src/theory/quantifiers/term_registry.cpp index 1377ad23d..d23ff060a 100644 --- a/src/theory/quantifiers/term_registry.cpp +++ b/src/theory/quantifiers/term_registry.cpp @@ -22,19 +22,26 @@ namespace CVC4 { namespace theory { namespace quantifiers { -TermRegistry::TermRegistry(QuantifiersState& qs, - QuantifiersInferenceManager& qim, - QuantifiersRegistry& qr) +TermRegistry::TermRegistry(QuantifiersState& qs, QuantifiersRegistry& qr) : d_presolve(qs.getUserContext(), true), d_presolveCache(qs.getUserContext()), d_termEnum(new TermEnumeration), - d_termDb(new TermDb(qs, qim, qr)), + d_termDb(new TermDb(qs, qr)), d_sygusTdb(nullptr) { if (options::sygus() || options::sygusInst()) { // must be constructed here since it is required for datatypes finistInit - d_sygusTdb.reset(new TermDbSygus(qs, qim)); + d_sygusTdb.reset(new TermDbSygus(qs)); + } +} + +void TermRegistry::finishInit(QuantifiersInferenceManager* qim) +{ + d_termDb->finishInit(qim); + if (d_sygusTdb.get()) + { + d_sygusTdb->finishInit(qim); } } |