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

Method SerializeTo

cpp/src/arrow/ipc/message.cc:241–260  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

239}
240
241Status Message::SerializeTo(io::OutputStream* stream, const IpcWriteOptions& options,
242 int64_t* output_length) const {
243 int32_t metadata_length = 0;
244 RETURN_NOT_OK(WriteMessage(*metadata(), options, stream, &metadata_length));
245
246 *output_length = metadata_length;
247
248 auto body_buffer = body();
249 if (body_buffer) {
250 RETURN_NOT_OK(stream->Write(body_buffer));
251 *output_length += body_buffer->size();
252
253 DCHECK_GE(this->body_length(), body_buffer->size());
254
255 int64_t remainder = this->body_length() - body_buffer->size();
256 RETURN_NOT_OK(WritePadding(stream, remainder));
257 *output_length += remainder;
258 }
259 return Status::OK();
260}
261
262bool Message::Verify() const {
263 const flatbuf::Message* unused;

Callers 1

TEST_PFunction · 0.80

Calls 7

body_lengthMethod · 0.95
WriteMessageFunction · 0.85
WritePaddingFunction · 0.85
metadataFunction · 0.50
OKFunction · 0.50
WriteMethod · 0.45
sizeMethod · 0.45

Tested by 1

TEST_PFunction · 0.64