Converts this into an [`ArrayRef`] with the provided `data_type` and `null_buffer`
(self, null_buffer: Option<Buffer>, data_type: ArrowType)
| 131 | |
| 132 | /// Converts this into an [`ArrayRef`] with the provided `data_type` and `null_buffer` |
| 133 | pub fn into_array(self, null_buffer: Option<Buffer>, data_type: ArrowType) -> ArrayRef { |
| 134 | let array_data_builder = ArrayDataBuilder::new(data_type) |
| 135 | .len(self.len()) |
| 136 | .add_buffer(Buffer::from_vec(self.offsets)) |
| 137 | .add_buffer(Buffer::from_vec(self.values)) |
| 138 | .null_bit_buffer(null_buffer); |
| 139 | |
| 140 | let data = match cfg!(debug_assertions) { |
| 141 | true => array_data_builder.build().unwrap(), |
| 142 | false => unsafe { array_data_builder.build_unchecked() }, |
| 143 | }; |
| 144 | |
| 145 | make_array(data) |
| 146 | } |
| 147 | } |
| 148 | |
| 149 | impl<I: OffsetSizeTrait> ValuesBuffer for OffsetBuffer<I> { |