FastLED 3.10.8
Loading...
Searching...
No Matches

◆ readChunk()

ChunkedReadResult fl::net::http::ChunkedReader::readChunk ( fl::span< u8 > out)

Definition at line 89 of file chunked_encoding.cpp.hpp.

89 {
91 if (mChunks.empty()) {
92 Status s = isFinal() ? Status::CHUNKED_FINAL : Status::CHUNKED_NO_DATA;
93 return ChunkedReadResult(s, fl::span<const u8>());
94 }
95 const fl::vector<u8>& front = mChunks.front();
96 if (out.size() < front.size()) {
97 // Caller's buffer is too small
98 return ChunkedReadResult(Status::CHUNKED_NO_DATA, fl::span<const u8>());
99 }
100 memcpy(out.data(), front.data(), front.size());
101 fl::span<const u8> written(out.data(), front.size());
102 mChunks.erase(mChunks.begin());
103 return ChunkedReadResult(Status::CHUNKED_DATA, written);
104}
bool isFinal() const FL_NO_EXCEPT
fl::vector< fl::vector< u8 > > mChunks
const T * data() const FL_NO_EXCEPT
Definition span.h:486
constexpr fl::size size() const FL_NO_EXCEPT
Definition span.h:483
fl::size size() const FL_NO_EXCEPT
T * data() FL_NO_EXCEPT
Definition vector.h:619
Status
Connection state, advanced by the platform's event handlers.
Definition wifi.h:51
FASTLED_FORCE_INLINE void * memcpy(void *dest, const void *src, size_t n) FL_NO_EXCEPT
Definition cstring.h:136

References fl::vector< T >::data(), fl::FL_NO_EXCEPT, isFinal(), mChunks, fl::memcpy(), and fl::vector_basic::size().

+ Here is the call graph for this function: