...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
boost::histogram::storage_adaptor — Turns any vector-like, array-like, and map-like container into a storage type.
// In header: <boost/histogram/storage_adaptor.hpp> template<typename T> class storage_adaptor { public: // public member functions storage_adaptor(storage_adaptor &&) = default; storage_adaptor(const storage_adaptor &) = default; storage_adaptor & operator=(storage_adaptor &&) = default; storage_adaptor & operator=(const storage_adaptor &) = default; template<class... Ts> storage_adaptor(Ts &&...); template<typename U> storage_adaptor & operator=(U &&); template<typename U> bool operator==(const U &) const; template<typename Archive> void serialize(Archive &, unsigned); };
storage_adaptor
public member functionsstorage_adaptor(storage_adaptor &&) = default;
storage_adaptor(const storage_adaptor &) = default;
storage_adaptor & operator=(storage_adaptor &&) = default;
storage_adaptor & operator=(const storage_adaptor &) = default;
template<class... Ts> storage_adaptor(Ts &&... ts);
template<typename U> storage_adaptor & operator=(U && u);
template<typename U> bool operator==(const U & u) const;
template<typename Archive> void serialize(Archive & ar, unsigned);