MCPcopy Create free account
hub / github.com/boostorg/asio / check_buffers

Method check_buffers

test/read.cpp:69–87  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

67
68 template <typename Iterator>
69 bool check_buffers(Iterator begin, Iterator end, size_t length)
70 {
71 if (length != position_)
72 return false;
73
74 Iterator iter = begin;
75 size_t checked_length = 0;
76 for (; iter != end && checked_length < length; ++iter)
77 {
78 size_t buffer_length = boost::asio::buffer_size(*iter);
79 if (buffer_length > length - checked_length)
80 buffer_length = length - checked_length;
81 if (memcmp(data_ + checked_length, iter->data(), buffer_length) != 0)
82 return false;
83 checked_length += buffer_length;
84 }
85
86 return true;
87 }
88
89 template <typename Const_Buffers>
90 bool check_buffers(const Const_Buffers& buffers, size_t length)

Calls 4

buffer_sizeFunction · 0.85
buffer_sequence_beginFunction · 0.50
buffer_sequence_endFunction · 0.50
dataMethod · 0.45