MCPcopy Create free account
hub / github.com/apache/arrow / ConsumeWholeObject

Function ConsumeWholeObject

cpp/src/arrow/json/chunker.cc:103–119  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

101
102template <typename Stream>
103static size_t ConsumeWholeObject(Stream&& stream) {
104 static constexpr unsigned parse_flags = rj::kParseIterativeFlag |
105 rj::kParseStopWhenDoneFlag |
106 rj::kParseNumbersAsStringsFlag;
107 rj::BaseReaderHandler<rj::UTF8<>> handler;
108 rj::Reader reader;
109 // parse a single JSON object
110 switch (reader.Parse<parse_flags>(stream, handler).Code()) {
111 case rj::kParseErrorNone:
112 return stream.Tell();
113 case rj::kParseErrorDocumentEmpty:
114 return 0;
115 default:
116 // rapidjson emitted an error, the most recent object was partial
117 return string_view::npos;
118 }
119}
120
121namespace {
122

Callers 2

FindFirstMethod · 0.70
FindLastMethod · 0.70

Calls 1

TellMethod · 0.45

Tested by

no test coverage detected