From 8896515eb7089338b019d1246fafa6a17fa13b23 Mon Sep 17 00:00:00 2001 From: Peter Johnson Date: Sun, 17 Sep 2023 20:00:56 -0700 Subject: [PATCH] [wpinet] uv::Buffer: Add bytes() accessor (#5653) Also add uint8_t constructors. --- wpinet/src/main/native/include/wpinet/uv/Buffer.h | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/wpinet/src/main/native/include/wpinet/uv/Buffer.h b/wpinet/src/main/native/include/wpinet/uv/Buffer.h index 4b58b0f2b0..01dc881a65 100644 --- a/wpinet/src/main/native/include/wpinet/uv/Buffer.h +++ b/wpinet/src/main/native/include/wpinet/uv/Buffer.h @@ -42,10 +42,23 @@ class Buffer : public uv_buf_t { base = const_cast(base_); len = static_cast(len_); } + Buffer(uint8_t* base_, size_t len_) { + base = reinterpret_cast(base_); + len = static_cast(len_); + } + Buffer(const uint8_t* base_, size_t len_) { + base = reinterpret_cast(const_cast(base_)); + len = static_cast(len_); + } std::span data() const { return {base, len}; } std::span data() { return {base, len}; } + std::span bytes() const { + return {reinterpret_cast(base), len}; + } + std::span bytes() { return {reinterpret_cast(base), len}; } + operator std::span() const { return data(); } // NOLINT operator std::span() { return data(); } // NOLINT