Lines Matching refs:read_pos
134 auto read_pos = iov_.begin();
135 while (read_pos != write_pos_) {
136 read_pos = WriteBuffers(read_pos);
202 IovecArray::iterator WriteBuffers(IovecArray::iterator read_pos) {
203 assert(read_pos != write_pos_);
204 ssize_t wrote = writev(fd_.get(), &(*read_pos), write_pos_ - read_pos);
216 while (wrote >= read_pos->iov_len) {
217 wrote -= read_pos->iov_len;
218 ++read_pos;
222 assert(read_pos != write_pos_);
226 read_pos->iov_len -= wrote;
227 read_pos->iov_base = static_cast<void*>(
228 static_cast<std::byte*>(read_pos->iov_base) + wrote);
230 return read_pos;