diff options
author | Mikhail Pozdnyakov <mikhail.pozdnyakov@mapbox.com> | 2019-09-09 18:35:23 +0300 |
---|---|---|
committer | Mikhail Pozdnyakov <mikhail.pozdnyakov@mapbox.com> | 2019-09-10 11:51:17 +0300 |
commit | 151ea331f87a8d3655b0b1a36f3e74de4ff708b9 (patch) | |
tree | 90056e643ae93b59f7fe434cc52db62581a037c1 /include/mbgl/util | |
parent | 5207a360746d7d0541e21ca4e8d22b432f41d8f5 (diff) | |
download | qtlocation-mapboxgl-151ea331f87a8d3655b0b1a36f3e74de4ff708b9.tar.gz |
[core] Use mapbox::base::TypeWrapper instead of utils::peer
Diffstat (limited to 'include/mbgl/util')
-rw-r--r-- | include/mbgl/util/peer.hpp | 34 |
1 files changed, 0 insertions, 34 deletions
diff --git a/include/mbgl/util/peer.hpp b/include/mbgl/util/peer.hpp deleted file mode 100644 index d16efddb57..0000000000 --- a/include/mbgl/util/peer.hpp +++ /dev/null @@ -1,34 +0,0 @@ -#pragma once - -#include <memory> -#include <type_traits> -#include <utility> - -namespace mbgl { -namespace util { - -class peer { -public: - peer() noexcept : storage(nullptr, noop_deleter) {} - - template <class T> - peer(T&& value) noexcept : storage(new std::decay_t<T>(std::forward<T>(value)), cast_deleter<std::decay_t<T>>) { - static_assert(!std::is_same<peer, std::decay_t<T>>::value, "Peer must not wrap itself."); - } - - bool has_value() const noexcept { return static_cast<bool>(storage); } - - template <class T> - T& get() noexcept { return *reinterpret_cast<T*>(storage.get()); } - -private: - template <typename T> - static void cast_deleter(void* ptr) noexcept { delete reinterpret_cast<T*>(ptr); } - static void noop_deleter(void*) noexcept {} - - using storage_t = std::unique_ptr<void, void(*)(void*)>; - storage_t storage; -}; - -} // namespace util -} // namespace mbgl |