userver: utils::IovIter Struct Reference
Loading...
Searching...
No Matches
utils::IovIter Struct Reference

#include <userver/utils/iovec_advance.hpp>

Detailed Description

A cursor over an array of iovec entries, used to track progress across multiple scatter/gather buffers.

Definition at line 41 of file iovec_advance.hpp.

Public Attributes

const struct iovec * iov {}
std::size_t iov_size {}
 Number of iovec entries remaining, starting at iov.
std::size_t iov_offset {0}

Member Data Documentation

◆ iov

const struct iovec* utils::IovIter::iov {}

Points to the first entry that has not been transferred completely. May point past the end of the array when iov_size == 0, so it must not be dereferenced without checking iov_size first.

Definition at line 45 of file iovec_advance.hpp.

◆ iov_offset

std::size_t utils::IovIter::iov_offset {0}

Byte offset within *iov, i.e. the number of bytes of the current entry that were already transferred. 0 means the current entry has not been partially consumed and the list can be reused as is.

Definition at line 53 of file iovec_advance.hpp.

◆ iov_size

std::size_t utils::IovIter::iov_size {}

Number of iovec entries remaining, starting at iov.

Definition at line 48 of file iovec_advance.hpp.


The documentation for this struct was generated from the following file: