| 215 | } |
| 216 | |
| 217 | fn finish_preserve_values(&mut self) -> MapArray { |
| 218 | let len = self.len(); |
| 219 | // Build the keys |
| 220 | let keys_arr = self.key_builder.finish_preserve_values(); |
| 221 | let values_arr = self.value_builder.finish_preserve_values(); |
| 222 | let offset_buffer = Buffer::from_vec(std::mem::take(&mut self.offsets_builder)); |
| 223 | self.offsets_builder.push(0); |
| 224 | let null_bit_buffer = self.null_buffer_builder.finish(); |
| 225 | |
| 226 | self.finish_helper(keys_arr, values_arr, offset_buffer, null_bit_buffer, len) |
| 227 | } |
| 228 | |
| 229 | fn finish_helper( |
| 230 | &self, |