1717
1818//! [`VariantArray`] implementation
1919
20-
2120use arrow:: array:: { Array , ArrayData , ArrayRef , AsArray , StructArray } ;
2221use arrow:: buffer:: NullBuffer ;
2322use arrow_schema:: { ArrowError , DataType } ;
@@ -168,16 +167,6 @@ impl VariantArray {
168167 & self . value_ref
169168 }
170169
171- /// Get the metadata bytes for a specific index
172- pub fn metadata_bytes ( & self , index : usize ) -> & [ u8 ] {
173- self . metadata_field ( ) . as_binary_view ( ) . value ( index)
174- }
175-
176- /// Get the value bytes for a specific index
177- pub fn value_bytes ( & self , index : usize ) -> & [ u8 ] {
178- self . value_field ( ) . as_binary_view ( ) . value ( index)
179- }
180-
181170 /// Get the field names for an object at the given index
182171 pub fn get_field_names ( & self , index : usize ) -> Vec < String > {
183172 if index >= self . len ( ) || self . is_null ( index) {
@@ -201,7 +190,7 @@ impl VariantArray {
201190 pub fn with_fields_removed ( & self , field_names : & [ & str ] ) -> Result < Self , ArrowError > {
202191 use parquet_variant:: VariantBuilder ;
203192 use std:: collections:: HashSet ;
204-
193+
205194 let fields_to_remove: HashSet < & str > = field_names. iter ( ) . copied ( ) . collect ( ) ;
206195 let mut builder = crate :: variant_array_builder:: VariantArrayBuilder :: new ( self . len ( ) ) ;
207196
@@ -210,19 +199,19 @@ impl VariantArray {
210199 builder. append_null ( ) ;
211200 } else {
212201 let variant = self . value ( i) ;
213-
202+
214203 // If it's an object, create a new object without the specified fields
215204 if let Some ( obj) = variant. as_object ( ) {
216205 let mut variant_builder = VariantBuilder :: new ( ) ;
217206 let mut object_builder = variant_builder. new_object ( ) ;
218-
207+
219208 // Add all fields except the ones to remove
220209 for ( field_name, field_value) in obj. iter ( ) {
221210 if !fields_to_remove. contains ( field_name) {
222211 object_builder. insert ( field_name, field_value) ;
223212 }
224213 }
225-
214+
226215 object_builder. finish ( ) . unwrap ( ) ;
227216 let ( metadata, value) = variant_builder. finish ( ) ;
228217 builder. append_variant_buffers ( & metadata, & value) ;
0 commit comments