diff options
author | Eelco Dolstra <edolstra@gmail.com> | 2022-01-17 22:20:05 +0100 |
---|---|---|
committer | Eelco Dolstra <edolstra@gmail.com> | 2022-01-18 11:12:30 +0100 |
commit | d62a9390fcdc0f9e4971e5fab2f667567237b252 (patch) | |
tree | cdbf6aef8b15b2ba5f02f7426ec2e5cd1f595e39 /src/libstore/nar-accessor.cc | |
parent | 52ee7ec0028263f04e15c05256ca90fa62a0da66 (diff) |
Get rid of std::shared_ptr<std::string> and ref<std::string>
These were needed back in the pre-C++11 era because we didn't have
move semantics. But now we do.
Diffstat (limited to 'src/libstore/nar-accessor.cc')
-rw-r--r-- | src/libstore/nar-accessor.cc | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/libstore/nar-accessor.cc b/src/libstore/nar-accessor.cc index 784ebb719..7d27d7667 100644 --- a/src/libstore/nar-accessor.cc +++ b/src/libstore/nar-accessor.cc @@ -28,7 +28,7 @@ struct NarMember struct NarAccessor : public FSAccessor { - std::shared_ptr<const std::string> nar; + std::optional<const std::string> nar; GetNarBytes getNarBytes; @@ -104,7 +104,7 @@ struct NarAccessor : public FSAccessor } }; - NarAccessor(ref<const std::string> nar) : nar(nar) + NarAccessor(std::string && _nar) : nar(_nar) { StringSource source(*nar); NarIndexer indexer(*this, source); @@ -224,9 +224,9 @@ struct NarAccessor : public FSAccessor } }; -ref<FSAccessor> makeNarAccessor(ref<const std::string> nar) +ref<FSAccessor> makeNarAccessor(std::string && nar) { - return make_ref<NarAccessor>(nar); + return make_ref<NarAccessor>(std::move(nar)); } ref<FSAccessor> makeNarAccessor(Source & source) |