1#include "io_vector.hpp"
2#include "buffer_packet.hpp"
12void IoVector::append(
const void* base, std::size_t length)
15 node.iov_base =
const_cast<void*
>(base);
16 node.iov_len = length;
17 m_vector.push_back(node);
20void IoVector::append(
const BufferPacket& packet)
22 for (
auto& kv : packet) {
23 const ByteBuffer& buffer = kv.second;
24 append(buffer.data(), buffer.size());
28std::size_t IoVector::length()
const
30 return m_vector.size();
33const iovec* IoVector::base()
const
35 return m_vector.empty() ? nullptr : &m_vector[0];