vector may be implemented using a bit-set, so we can't just reinterpret_cast, accessing its data as vector and let flatbuffer CreateVector handle it. Background: https://isocpp.org/blog/2012/11/on-vectorbool
| 41 | // CreateVector handle it. |
| 42 | // Background: https://isocpp.org/blog/2012/11/on-vectorbool |
| 43 | DataBuffer::FlatBufferOffset CopyBoolToBuffer( |
| 44 | const Array& array, flatbuffers::FlatBufferBuilder* builder) { |
| 45 | const auto& src_data = array.GetBuffer<ArrayDataType::kBool>().data; |
| 46 | return builder->CreateVector(src_data); |
| 47 | } |
| 48 | |
| 49 | template <ArrayDataType T> |
| 50 | DataBuffer::FlatBufferOffset CopyBuffer( |