Builds the [`GenericByteViewArray`] and reset this builder
(&mut self)
| 486 | |
| 487 | /// Builds the [`GenericByteViewArray`] and reset this builder |
| 488 | pub fn finish(&mut self) -> GenericByteViewArray<T> { |
| 489 | self.flush_in_progress(); |
| 490 | let completed = std::mem::take(&mut self.completed); |
| 491 | let nulls = self.null_buffer_builder.finish(); |
| 492 | if let Some((ht, _)) = self.string_tracker.as_mut() { |
| 493 | ht.clear(); |
| 494 | } |
| 495 | let views = std::mem::take(&mut self.views_buffer); |
| 496 | // SAFETY: valid by construction |
| 497 | unsafe { GenericByteViewArray::new_unchecked(views.into(), completed, nulls) } |
| 498 | } |
| 499 | |
| 500 | /// Builds the [`GenericByteViewArray`] without resetting the builder |
| 501 | pub fn finish_cloned(&self) -> GenericByteViewArray<T> { |