5#ifndef WPINET_RAW_UV_OSTREAM_H_
6#define WPINET_RAW_UV_OSTREAM_H_
12#include <wpi/SmallVector.h>
13#include <wpi/raw_ostream.h>
44 : m_bufs(
bufs), m_alloc(
std::move(alloc)) {
53 std::span<uv::Buffer>
bufs() {
return m_bufs; }
63 void write_impl(
const char* data,
size_t len)
override;
64 uint64_t current_pos()
const override;
raw_ostream style output to a SmallVector of uv::Buffer buffers.
Definition raw_uv_ostream.h:24
raw_uv_ostream(SmallVectorImpl< uv::Buffer > &bufs, std::function< uv::Buffer()> alloc)
Construct a new raw_uv_ostream.
Definition raw_uv_ostream.h:42
void reset()
Resets the amount of allocated space.
Definition raw_uv_ostream.h:60
std::span< uv::Buffer > bufs()
Returns an span to the buffers.
Definition raw_uv_ostream.h:53
~raw_uv_ostream() override=default
raw_uv_ostream(SmallVectorImpl< uv::Buffer > &bufs, size_t allocSize)
Construct a new raw_uv_ostream.
Definition raw_uv_ostream.h:32
Data buffer.
Definition Buffer.h:23
static Buffer Allocate(size_t size)
Definition Buffer.h:65
Definition PointerIntPair.h:280
Definition ntcore_cpp.h:26