53 for (
size_t i = 0; i < remaining; i++) {
92 Status s =
isFinal() ? Status::CHUNKED_FINAL : Status::CHUNKED_NO_DATA;
96 if (out.size() < front.
size()) {
128 for (
size_t i = 0; i + 1 <
mBuffer.size(); i++) {
134 size_t semicolon = sizeStr.
find(
';');
136 sizeStr = sizeStr.
substr(0, semicolon);
167 for (
size_t i = n; i <
mBuffer.size(); i++) {
183 int hexLen =
fl::snprintf(sizeHex,
sizeof(sizeHex),
"%zx", dataLen);
184 return static_cast<size_t>(hexLen) + 2 + dataLen + 2;
190 int hexLen =
fl::snprintf(sizeHex,
sizeof(sizeHex),
"%zx\r\n", data.size());
191 size_t totalNeeded =
static_cast<size_t>(hexLen) + data.size() + 2;
192 if (out.size() < totalNeeded) {
196 u8* dst = out.data();
199 memcpy(dst, sizeHex,
static_cast<size_t>(hexLen));
203 memcpy(dst, data.data(), data.size());
218 const char* finalStr =
"0\r\n\r\n";
fl::size find(const char &value) const FL_NO_EXCEPT
const char * c_str() const FL_NO_EXCEPT
bool parseChunkSize(size_t &outSize) FL_NO_EXCEPT
void reset() FL_NO_EXCEPT
ChunkedReadResult readChunk(fl::span< u8 > out) FL_NO_EXCEPT
size_t nextChunkSize() const FL_NO_EXCEPT
void feed(fl::span< const u8 > data) FL_NO_EXCEPT
fl::vector< u8 > mCurrentChunk
void consume(size_t n) FL_NO_EXCEPT
bool hasChunk() const FL_NO_EXCEPT
bool isFinal() const FL_NO_EXCEPT
ChunkedReader() FL_NO_EXCEPT
bool hasCRLF() const FL_NO_EXCEPT
fl::vector< fl::vector< u8 > > mChunks
size_t writeChunk(fl::span< const u8 > data, fl::span< u8 > out) FL_NO_EXCEPT
ChunkedWriter() FL_NO_EXCEPT
size_t writeFinal(fl::span< u8 > out) FL_NO_EXCEPT
static constexpr size_t FINAL_SIZE
static size_t chunkOverhead(size_t dataLen) FL_NO_EXCEPT
string substr(fl::size start, fl::size length) const FL_NO_EXCEPT
static constexpr fl::size npos
fl::size size() const FL_NO_EXCEPT
void reserve(fl::size n) FL_NO_EXCEPT
void push_back(const T &value) FL_NO_EXCEPT
constexpr T * end(T(&array)[N]) FL_NO_EXCEPT
constexpr remove_reference< T >::type && move(T &&t) FL_NO_EXCEPT
u8 u8 fract8 blur_amount FL_NO_EXCEPT
int snprintf(char *buffer, fl::size size, const char *format) FL_NO_EXCEPT
FASTLED_FORCE_INLINE void * memcpy(void *dest, const void *src, size_t n) FL_NO_EXCEPT
FASTLED_FORCE_INLINE unsigned long strtoul(const char *str, char **endptr, int base) FL_NO_EXCEPT
int available() FL_NO_EXCEPT
Base definition for an LED controller.