24 #ifndef __mqtt_buffer_view_h 25 #define __mqtt_buffer_view_h 62 : data_(
data), sz_(n) {}
95 std::basic_string<value_type>
str()
const {
96 return std::basic_string<value_type>(data_, sz_);
103 static_assert(
sizeof(
char) ==
sizeof(T),
"can only get string for char or byte buffers");
104 return string(reinterpret_cast<const char*>(data_), sz_);
116 template <
typename T>
117 std::ostream& operator<<(std::ostream& os, const buffer_view<T>& buf) {
119 os.write(buf.data(),
sizeof(T)*buf.size());
134 #endif // __mqtt_buffer_view_h string to_string() const
Definition: buffer_view.h:102
size_type length() const
Definition: buffer_view.h:84
std::string string
Definition: types.h:40
buffer_view(const std::basic_string< value_type > &str)
Definition: buffer_view.h:68
size_t size_type
Definition: buffer_view.h:47
buffer_view(const value_type *data, size_type n)
Definition: buffer_view.h:61
const value_type * data() const
Definition: buffer_view.h:74
std::basic_string< value_type > str() const
Definition: buffer_view.h:95
const value_type & operator[](size_t i) const
Definition: buffer_view.h:90
Definition: buffer_view.h:41
size_type size() const
Definition: buffer_view.h:79
T value_type
Definition: buffer_view.h:45
Definition: async_client.h:49