MCPcopy Create free account
hub / github.com/3rdparty/libprocess / decode

Method decode

src/decoder.hpp:826–848  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

824 }
825
826 std::deque<http::Request*> decode(const char* data, size_t length)
827 {
828 size_t parsed = http_parser_execute(&parser, &settings, data, length);
829 if (parsed != length) {
830 // TODO(bmahler): joyent/http-parser exposes error reasons.
831 failure = true;
832
833 // If we're still writing the body, fail the writer!
834 if (writer.isSome()) {
835 http::Pipe::Writer writer_ = writer.get(); // Remove const.
836 writer_.fail("failed to decode body");
837 writer = None();
838 }
839 }
840
841 if (!requests.empty()) {
842 std::deque<http::Request*> result = requests;
843 requests.clear();
844 return result;
845 }
846
847 return std::deque<http::Request*>();
848 }
849
850 bool failed() const
851 {

Callers

nothing calls this directly

Calls 3

getMethod · 0.45
failMethod · 0.45
emptyMethod · 0.45

Tested by

no test coverage detected