diff --git a/include/rexy/binary.hpp b/include/rexy/binary.hpp index 2f1a840..bb0af5b 100644 --- a/include/rexy/binary.hpp +++ b/include/rexy/binary.hpp @@ -41,6 +41,7 @@ namespace rexy{ public: protected: constexpr binary_base(void)noexcept = default; + constexpr binary_base(size_t len)noexcept; constexpr binary_base(char* data, size_t size)noexcept; constexpr binary_base(char* data, size_t size, size_t cap)noexcept; constexpr binary_base(const binary_base& b)noexcept; diff --git a/include/rexy/binary.tpp b/include/rexy/binary.tpp index 874c18a..2cb8e4d 100644 --- a/include/rexy/binary.tpp +++ b/include/rexy/binary.tpp @@ -34,6 +34,8 @@ namespace rexy{ + constexpr binary_base::binary_base(size_t len)noexcept: + m_cap(len){} constexpr binary_base::binary_base(char* data, size_t size)noexcept: m_data(data), m_cap(size){} constexpr binary_base::binary_base(char* data, size_t size, size_t cap)noexcept: @@ -140,7 +142,7 @@ namespace rexy{ } template binary_data& binary_data::operator=(const binary_base& b) - noexcept(noexcept(Allocator::copy(b.m_data, b.m_size))) + noexcept(noexcept(Allocator::copy(b.get(), b.size()))) { return _copy_data(b.get(), b.size()); }