@@ -734,14 +734,14 @@ constexpr recv_flags operator~(recv_flags a) noexcept
734734class mutable_buffer
735735{
736736 public:
737- mutable_buffer () noexcept : _data(nullptr ), _size(0 ) {}
738- mutable_buffer (void *p, size_t n) noexcept : _data(p), _size(n)
737+ constexpr mutable_buffer () noexcept : _data(nullptr ), _size(0 ) {}
738+ constexpr mutable_buffer (void *p, size_t n) noexcept : _data(p), _size(n)
739739 {
740740 assert (p != nullptr || n == 0 );
741741 }
742742
743- void *data () const noexcept { return _data; }
744- size_t size () const noexcept { return _size; }
743+ constexpr void *data () const noexcept { return _data; }
744+ constexpr size_t size () const noexcept { return _size; }
745745 mutable_buffer &operator +=(size_t n) noexcept
746746 {
747747 // (std::min) is a workaround for when a min macro is defined
@@ -769,16 +769,16 @@ inline mutable_buffer operator+(size_t n, const mutable_buffer &mb) noexcept
769769class const_buffer
770770{
771771 public:
772- const_buffer () noexcept : _data(nullptr ), _size(0 ) {}
773- const_buffer (const void *p, size_t n) noexcept : _data(p), _size(n) {}
774- const_buffer (const mutable_buffer &mb) noexcept :
772+ constexpr const_buffer () noexcept : _data(nullptr ), _size(0 ) {}
773+ constexpr const_buffer (const void *p, size_t n) noexcept : _data(p), _size(n) {}
774+ constexpr const_buffer (const mutable_buffer &mb) noexcept :
775775 _data(mb.data()),
776776 _size(mb.size())
777777 {
778778 }
779779
780- const void *data () const noexcept { return _data; }
781- size_t size () const noexcept { return _size; }
780+ constexpr const void *data () const noexcept { return _data; }
781+ constexpr size_t size () const noexcept { return _size; }
782782 const_buffer &operator +=(size_t n) noexcept
783783 {
784784 const auto shift = (std::min)(n, _size);
@@ -805,27 +805,27 @@ inline const_buffer operator+(size_t n, const const_buffer &cb) noexcept
805805
806806// buffer creation
807807
808- inline mutable_buffer buffer (void * p, size_t n) noexcept
808+ constexpr mutable_buffer buffer (void * p, size_t n) noexcept
809809{
810810 return mutable_buffer (p, n);
811811}
812- inline const_buffer buffer (const void * p, size_t n) noexcept
812+ constexpr const_buffer buffer (const void * p, size_t n) noexcept
813813{
814814 return const_buffer (p, n);
815815}
816- inline mutable_buffer buffer (const mutable_buffer& mb) noexcept
816+ constexpr mutable_buffer buffer (const mutable_buffer& mb) noexcept
817817{
818818 return mb;
819819}
820- inline mutable_buffer buffer (const mutable_buffer& mb, size_t n) noexcept
820+ constexpr mutable_buffer buffer (const mutable_buffer& mb, size_t n) noexcept
821821{
822822 return mutable_buffer (mb.data (), (std::min)(mb.size (), n));
823823}
824- inline const_buffer buffer (const const_buffer& cb) noexcept
824+ constexpr const_buffer buffer (const const_buffer& cb) noexcept
825825{
826826 return cb;
827827}
828- inline const_buffer buffer (const const_buffer& cb, size_t n) noexcept
828+ constexpr const_buffer buffer (const const_buffer& cb, size_t n) noexcept
829829{
830830 return const_buffer (cb.data (), (std::min)(cb.size (), n));
831831}
0 commit comments