more use of for-loop and emplace_back in bencode.hpp

This commit is contained in:
Alden Torres 2018-03-15 17:36:15 -04:00 committed by Arvid Norberg
parent 4e04e6993d
commit eeffbc0e8c
1 changed files with 7 additions and 8 deletions

View File

@ -173,22 +173,21 @@ namespace detail {
break; break;
case entry::list_t: case entry::list_t:
write_char(out, 'l'); write_char(out, 'l');
for (entry::list_type::const_iterator i = e.list().begin(); i != e.list().end(); ++i) for (auto const& i : e.list())
ret += bencode_recursive(out, *i); ret += bencode_recursive(out, i);
write_char(out, 'e'); write_char(out, 'e');
ret += 2; ret += 2;
break; break;
case entry::dictionary_t: case entry::dictionary_t:
write_char(out, 'd'); write_char(out, 'd');
for (entry::dictionary_type::const_iterator i = e.dict().begin(); for (auto const& i : e.dict())
i != e.dict().end(); ++i)
{ {
// write key // write key
ret += write_integer(out, i->first.length()); ret += write_integer(out, i.first.length());
write_char(out, ':'); write_char(out, ':');
ret += write_string(i->first, out); ret += write_string(i.first, out);
// write value // write value
ret += bencode_recursive(out, i->second); ret += bencode_recursive(out, i.second);
ret += 1; ret += 1;
} }
write_char(out, 'e'); write_char(out, 'e');
@ -260,7 +259,7 @@ namespace detail {
++in; // 'l' ++in; // 'l'
while (*in != 'e') while (*in != 'e')
{ {
ret.list().push_back(entry()); ret.list().emplace_back();
entry& e = ret.list().back(); entry& e = ret.list().back();
bdecode_recursive(in, end, e, err, depth + 1); bdecode_recursive(in, end, e, err, depth + 1);
if (err) if (err)