summaryrefslogtreecommitdiff
path: root/src/theory/inference_manager_buffered.cpp
diff options
context:
space:
mode:
authorGereon Kremer <gereon.kremer@cs.rwth-aachen.de>2020-09-02 17:21:03 +0200
committerGitHub <noreply@github.com>2020-09-02 10:21:03 -0500
commit1e93736643667d7b8e4ff9fa5f86596ce1ec31d3 (patch)
tree2d8fee2723b4ead48289fc5b7b6b4617cd7b291e /src/theory/inference_manager_buffered.cpp
parent02e682821028bc704c57a762dadeb6f82bb70ebf (diff)
Use std::unique_ptr instead of std::shared_ptr for inference manager (#5003)
We now use std::unique_ptr instead of std::shared_ptr when storing TheoryInference objects.
Diffstat (limited to 'src/theory/inference_manager_buffered.cpp')
-rw-r--r--src/theory/inference_manager_buffered.cpp11
1 files changed, 5 insertions, 6 deletions
diff --git a/src/theory/inference_manager_buffered.cpp b/src/theory/inference_manager_buffered.cpp
index df01b4e93..8d7dd2abc 100644
--- a/src/theory/inference_manager_buffered.cpp
+++ b/src/theory/inference_manager_buffered.cpp
@@ -50,11 +50,11 @@ void InferenceManagerBuffered::addPendingLemma(Node lem,
ProofGenerator* pg)
{
// make the simple theory lemma
- d_pendingLem.push_back(std::make_shared<SimpleTheoryLemma>(lem, p, pg));
+ d_pendingLem.emplace_back(new SimpleTheoryLemma(lem, p, pg));
}
void InferenceManagerBuffered::addPendingLemma(
- std::shared_ptr<TheoryInference> lemma)
+ std::unique_ptr<TheoryInference> lemma)
{
d_pendingLem.emplace_back(std::move(lemma));
}
@@ -65,12 +65,11 @@ void InferenceManagerBuffered::addPendingFact(Node conc,
{
// make a simple theory internal fact
Assert(conc.getKind() != AND && conc.getKind() != OR);
- d_pendingFact.push_back(
- std::make_shared<SimpleTheoryInternalFact>(conc, exp, pg));
+ d_pendingFact.emplace_back(new SimpleTheoryInternalFact(conc, exp, pg));
}
void InferenceManagerBuffered::addPendingFact(
- std::shared_ptr<TheoryInference> fact)
+ std::unique_ptr<TheoryInference> fact)
{
d_pendingFact.emplace_back(std::move(fact));
}
@@ -97,7 +96,7 @@ void InferenceManagerBuffered::doPendingFacts()
void InferenceManagerBuffered::doPendingLemmas()
{
- for (const std::shared_ptr<TheoryInference>& plem : d_pendingLem)
+ for (const std::unique_ptr<TheoryInference>& plem : d_pendingLem)
{
// process this lemma
plem->process(this);
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback