diff options
author | Roman Smrž <roman.smrz@seznam.cz> | 2024-08-31 22:17:16 +0200 |
---|---|---|
committer | Roman Smrž <roman.smrz@seznam.cz> | 2024-09-29 10:02:17 +0200 |
commit | 81895699131121a1dab67ce026dcf8490c4de9e0 (patch) | |
tree | 5f373addbf9355a73d22c0b0ee840afe100eff93 /src/storage.cpp | |
parent | a689af61eb91dcbc135890276a3c6281166d30f9 (diff) |
Network streams, accept for data response
Changelog: Implemented streams in network protocol
Diffstat (limited to 'src/storage.cpp')
-rw-r--r-- | src/storage.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/storage.cpp b/src/storage.cpp index 19f35a9..fd985c7 100644 --- a/src/storage.cpp +++ b/src/storage.cpp @@ -1579,6 +1579,21 @@ optional<ObjectT<S>> ObjectT<S>::decode(const S & st, return nullopt; } +template< class S > +vector< ObjectT< S >> ObjectT< S >::decodeMany( const S & st, + const std::vector< uint8_t > & data) +{ + vector< ObjectT< S >> objects; + auto cur = data.begin(); + + while( auto pair = decodePrefix( st, cur, data.end() )) { + auto [ obj, next ] = *pair; + objects.push_back( move( obj )); + cur = next; + } + return objects; +} + template<class S> vector<uint8_t> ObjectT<S>::encode() const { |