line |
true |
false |
branch |
12
|
0 |
0 |
MessageBuilder& deflate (bool v) noexcept { _deflate = v ? DeflateFlag::YES : DeflateFlag::NO; return *this; } |
16
|
0 |
0 |
return _parser.start_message(_opcode, apply_deflate).send(payload, true); |
22
|
0 |
0 |
for (auto it = payload_begin; it != payload_end; ++it) payload_length += (*it).length(); |
24
|
0 |
0 |
return _parser.start_message(_opcode, apply_deflate).send(payload_begin, payload_end, true); |
32
|
0 |
0 |
auto cont_range = make_iterator_pair(cont_begin, cont_end); |
34
|
0 |
0 |
for (const auto& range : cont_range) { |
36
|
0 |
0 |
for (const auto& it : range) { |
39
|
0 |
0 |
if (length) ++sz; |
41
|
0 |
0 |
if (piece_sz) { last_nonempty = idx; }; |
46
|
0 |
0 |
auto sender = _parser.start_message(_opcode, maybe_deflate(payload_sz)); |
|
0 |
0 |
auto sender = _parser.start_message(_opcode, maybe_deflate(payload_sz)); |
48
|
0 |
0 |
if (!payload_sz) { |
49
|
0 |
0 |
ret.reserve(1); |
50
|
0 |
0 |
ret.push_back(sender.send(true)); |
|
0 |
0 |
ret.push_back(sender.send(true)); |
54
|
0 |
0 |
ret.reserve(sz); |
57
|
0 |
0 |
for (auto& range : cont_range) { |
59
|
0 |
0 |
for (const auto& it: range) piece_sz += it.length(); |
60
|
0 |
0 |
if (piece_sz) { |
61
|
0 |
0 |
auto frame_range = sender.send(range.begin(), range.end(), idx == last_nonempty); |
62
|
0 |
0 |
for (const auto& s : frame_range) ret.push_back(s); |
|
0 |
0 |
for (const auto& s : frame_range) ret.push_back(s); |
64
|
0 |
0 |
if (idx == last_nonempty) break; |
86
|
0 |
0 |
return _opcode == Opcode::TEXT && |
87
|
0 |
0 |
_parser._deflate_cfg && |
88
|
0 |
0 |
_parser._deflate_cfg->compression_threshold <= payload_length && |
90
|
0 |
0 |
? DeflateFlag::YES : DeflateFlag::NO; |