From aae376e9a873cd6e72b37a8901df53fa9b1aa316 Mon Sep 17 00:00:00 2001 From: OptoCloud <26223094+OptoCloud@users.noreply.github.com> Date: Fri, 6 Nov 2020 03:09:01 +0100 Subject: [PATCH] Add GetBufferSpan() function to bufferbuilder (#6235) This will return the finished internal buffer data as a span --- include/flatbuffers/flatbuffers.h | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/include/flatbuffers/flatbuffers.h b/include/flatbuffers/flatbuffers.h index 4cbbb3270..868383280 100644 --- a/include/flatbuffers/flatbuffers.h +++ b/include/flatbuffers/flatbuffers.h @@ -1239,6 +1239,14 @@ class FlatBufferBuilder { return buf_.data(); } + /// @brief Get the serialized buffer (after you call `Finish()`) as a span. + /// @return Returns a constructed flatbuffers::span that is a view over the + /// FlatBuffer data inside the buffer. + flatbuffers::span GetBufferSpan() const { + Finished(); + return flatbuffers::span(buf_.data(), buf_.size()); + } + /// @brief Get a pointer to an unfinished buffer. /// @return Returns a `uint8_t` pointer to the unfinished buffer. uint8_t *GetCurrentBufferPointer() const { return buf_.data(); }