[all] Switch from boost::shared_ptr -> std::shared_ptr.

Shared_ptr has moved into the standard library since these tools were
first written.
This commit is contained in:
Joe Thornber
2020-04-30 15:02:43 +01:00
parent e801cc607b
commit 4313469475
40 changed files with 78 additions and 94 deletions

View File

@@ -125,7 +125,7 @@ namespace cache {
typedef block_manager<>::read_ref read_ref;
typedef block_manager<>::write_ref write_ref;
typedef boost::shared_ptr<metadata> ptr;
typedef std::shared_ptr<metadata> ptr;
tm_ptr tm_;
superblock sb_;

View File

@@ -3,7 +3,6 @@
#include "persistent-data/block.h"
#include <boost/shared_ptr.hpp>
#include <vector>
//----------------------------------------------------------------
@@ -13,7 +12,7 @@ namespace caching {
class emitter {
public:
typedef boost::shared_ptr<emitter> ptr;
typedef std::shared_ptr<emitter> ptr;
virtual ~emitter() {}

View File

@@ -38,16 +38,16 @@ namespace {
xx(4);
template <uint32_t WIDTH>
boost::shared_ptr<array_base> mk_array(transaction_manager &tm) {
std::shared_ptr<array_base> mk_array(transaction_manager &tm) {
typedef hint_traits<WIDTH> traits;
typedef persistent_data::array<traits> ha;
boost::shared_ptr<array_base> r = typename ha::ptr(new ha(tm, typename traits::ref_counter()));
std::shared_ptr<array_base> r = typename ha::ptr(new ha(tm, typename traits::ref_counter()));
return r;
}
boost::shared_ptr<array_base> mk_array(transaction_manager &tm, uint32_t width) {
std::shared_ptr<array_base> mk_array(transaction_manager &tm, uint32_t width) {
switch (width) {
#define xx(n) case n: return mk_array<n>(tm)
@@ -58,15 +58,15 @@ namespace {
}
// never get here
return boost::shared_ptr<array_base>();
return std::shared_ptr<array_base>();
}
//--------------------------------
template <typename HA>
boost::shared_ptr<HA>
downcast_array(boost::shared_ptr<array_base> base) {
boost::shared_ptr<HA> a = dynamic_pointer_cast<HA>(base);
std::shared_ptr<HA>
downcast_array(std::shared_ptr<array_base> base) {
std::shared_ptr<HA> a = dynamic_pointer_cast<HA>(base);
if (!a)
throw runtime_error("internal error: couldn't cast hint array");
@@ -76,16 +76,16 @@ namespace {
//--------------------------------
template <uint32_t WIDTH>
boost::shared_ptr<array_base> mk_array(transaction_manager &tm, block_address root, unsigned nr_entries) {
std::shared_ptr<array_base> mk_array(transaction_manager &tm, block_address root, unsigned nr_entries) {
typedef hint_traits<WIDTH> traits;
typedef persistent_data::array<traits> ha;
boost::shared_ptr<array_base> r = typename ha::ptr(new ha(tm, typename traits::ref_counter(), root, nr_entries));
std::shared_ptr<array_base> r = typename ha::ptr(new ha(tm, typename traits::ref_counter(), root, nr_entries));
return r;
}
boost::shared_ptr<array_base> mk_array(transaction_manager &tm, uint32_t width, block_address root, unsigned nr_entries) {
std::shared_ptr<array_base> mk_array(transaction_manager &tm, uint32_t width, block_address root, unsigned nr_entries) {
switch (width) {
#define xx(n) case n: return mk_array<n>(tm, root, nr_entries)
all_widths
@@ -95,21 +95,21 @@ namespace {
}
// never get here
return boost::shared_ptr<array_base>();
return std::shared_ptr<array_base>();
}
//--------------------------------
template <uint32_t WIDTH>
void get_hint(boost::shared_ptr<array_base> base, unsigned index, vector<unsigned char> &data) {
void get_hint(std::shared_ptr<array_base> base, unsigned index, vector<unsigned char> &data) {
typedef hint_traits<WIDTH> traits;
typedef persistent_data::array<traits> ha;
boost::shared_ptr<ha> a = downcast_array<ha>(base);
std::shared_ptr<ha> a = downcast_array<ha>(base);
data = a->get(index);
}
void get_hint_(uint32_t width, boost::shared_ptr<array_base> base, unsigned index, vector<unsigned char> &data) {
void get_hint_(uint32_t width, std::shared_ptr<array_base> base, unsigned index, vector<unsigned char> &data) {
switch (width) {
#define xx(n) case n: return get_hint<n>(base, index, data)
all_widths
@@ -120,15 +120,15 @@ namespace {
//--------------------------------
template <uint32_t WIDTH>
void set_hint(boost::shared_ptr<array_base> base, unsigned index, vector<unsigned char> const &data) {
void set_hint(std::shared_ptr<array_base> base, unsigned index, vector<unsigned char> const &data) {
typedef hint_traits<WIDTH> traits;
typedef persistent_data::array<traits> ha;
boost::shared_ptr<ha> a = downcast_array<ha>(base);
std::shared_ptr<ha> a = downcast_array<ha>(base);
a->set(index, data);
}
void set_hint_(uint32_t width, boost::shared_ptr<array_base> base,
void set_hint_(uint32_t width, std::shared_ptr<array_base> base,
unsigned index, vector<unsigned char> const &data) {
switch (width) {
#define xx(n) case n: return set_hint<n>(base, index, data)
@@ -140,15 +140,15 @@ namespace {
//--------------------------------
template <uint32_t WIDTH>
void grow(boost::shared_ptr<array_base> base, unsigned new_nr_entries, vector<unsigned char> const &value) {
void grow(std::shared_ptr<array_base> base, unsigned new_nr_entries, vector<unsigned char> const &value) {
typedef hint_traits<WIDTH> traits;
typedef persistent_data::array<traits> ha;
boost::shared_ptr<ha> a = downcast_array<ha>(base);
std::shared_ptr<ha> a = downcast_array<ha>(base);
a->grow(new_nr_entries, value);
}
void grow_(uint32_t width, boost::shared_ptr<array_base> base,
void grow_(uint32_t width, std::shared_ptr<array_base> base,
unsigned new_nr_entries, vector<unsigned char> const &value)
{
switch (width) {
@@ -194,17 +194,17 @@ namespace {
};
template <uint32_t WIDTH>
void walk_hints(boost::shared_ptr<array_base> base, hint_visitor &hv, damage_visitor &dv) {
void walk_hints(std::shared_ptr<array_base> base, hint_visitor &hv, damage_visitor &dv) {
typedef hint_traits<WIDTH> traits;
typedef persistent_data::array<traits> ha;
boost::shared_ptr<ha> a = downcast_array<ha>(base);
std::shared_ptr<ha> a = downcast_array<ha>(base);
value_adapter vv(hv);
ll_damage_visitor ll(dv);
a->visit_values(vv, ll);
}
void walk_hints_(uint32_t width, boost::shared_ptr<array_base> base,
void walk_hints_(uint32_t width, std::shared_ptr<array_base> base,
hint_visitor &hv, damage_visitor &dv) {
switch (width) {
#define xx(n) case n: walk_hints<n>(base, hv, dv); break

View File

@@ -55,7 +55,7 @@ namespace caching {
class hint_array {
public:
typedef boost::shared_ptr<hint_array> ptr;
typedef std::shared_ptr<hint_array> ptr;
hint_array(transaction_manager &tm, unsigned width);
hint_array(transaction_manager &tm, unsigned width, block_address root, unsigned nr_entries);
@@ -77,7 +77,7 @@ namespace caching {
static uint32_t check_width(uint32_t width);
unsigned width_;
boost::shared_ptr<persistent_data::array_base> impl_;
std::shared_ptr<persistent_data::array_base> impl_;
};
}

View File

@@ -24,7 +24,7 @@ namespace caching {
typedef block_manager::read_ref read_ref;
typedef block_manager::write_ref write_ref;
typedef boost::shared_ptr<metadata> ptr;
typedef std::shared_ptr<metadata> ptr;
metadata(block_manager::ptr bm, open_type ot, unsigned metadata_version = 2); // Create only
metadata(block_manager::ptr bm);