| 233 | } |
| 234 | |
| 235 | Status FinishInternal(std::shared_ptr<ArrayData>* out) override { |
| 236 | ARROW_ASSIGN_OR_RAISE(auto null_bitmap, |
| 237 | null_bitmap_builder_.FinishWithLength(length_)); |
| 238 | ARROW_ASSIGN_OR_RAISE(auto data, data_builder_.FinishWithLength(length_)); |
| 239 | *out = ArrayData::Make(type(), length_, {null_bitmap, data}, null_count_); |
| 240 | capacity_ = length_ = null_count_ = 0; |
| 241 | return Status::OK(); |
| 242 | } |
| 243 | |
| 244 | /// \cond FALSE |
| 245 | using ArrayBuilder::Finish; |