| 157 | } |
| 158 | |
| 159 | void ChunkedReader::consume(size_t n) { |
| 160 | if (n >= mBuffer.size()) { |
| 161 | mBuffer.clear(); |
| 162 | } else { |
| 163 | // fl::vector doesn't have erase(first, last), so create new vector without first n elements |
| 164 | fl::vector<u8> newBuffer; |
| 165 | newBuffer.reserve(mBuffer.size() - n); |
| 166 | for (size_t i = n; i < mBuffer.size(); i++) { |
| 167 | newBuffer.push_back(mBuffer[i]); |
| 168 | } |
| 169 | mBuffer = fl::move(newBuffer); |
| 170 | } |
| 171 | } |
| 172 | |
| 173 | // ChunkedWriter implementation |
| 174 |