File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -919,10 +919,18 @@ class BufferStreamReadOnly : public BufferStream {
919919 explicit BufferStreamReadOnly (T(&buffer)[M][N])
920920 : BufferStreamReadOnly(static_cast <const T*>(buffer), sizeof(T) * M * N) {}
921921
922+ template <BufferStreamNonResizableContiguousContainer T>
923+ explicit BufferStreamReadOnly (T& buffer)
924+ : BufferStreamReadOnly(const_cast <const typename T::value_type*>(buffer.data()), buffer.size() * sizeof(typename T::value_type)) {}
925+
922926 template <BufferStreamNonResizableContiguousContainerConst T>
923927 explicit BufferStreamReadOnly (T& buffer)
924928 : BufferStreamReadOnly(buffer.data(), buffer.size() * sizeof(typename T::value_type)) {}
925929
930+ template <BufferStreamResizableContiguousContainer T>
931+ explicit BufferStreamReadOnly (T& buffer)
932+ : BufferStreamReadOnly(const_cast <const typename T::value_type*>(buffer.data()), buffer.size() * sizeof(typename T::value_type)) {}
933+
926934 template <BufferStreamResizableContiguousContainerConst T>
927935 explicit BufferStreamReadOnly (T& buffer)
928936 : BufferStreamReadOnly(buffer.data(), buffer.size() * sizeof(typename T::value_type)) {}
You can’t perform that action at this time.
0 commit comments