@@ -196,7 +196,7 @@ fn shredded_get_path(
196196
197197 // If our caller did not request any specific type, we can just return whatever we landed on.
198198 let Some ( as_field) = as_field else {
199- return Ok ( ArrayRef :: from ( target) ) ;
199+ return Ok ( Arc :: new ( target) as ArrayRef ) ;
200200 } ;
201201
202202 // Structs are special. Recurse into each field separately, hoping to follow the shredding even
@@ -314,7 +314,8 @@ mod test {
314314 fn single_variant_get_test ( input_json : & str , path : VariantPath , expected_json : & str ) {
315315 // Create input array from JSON string
316316 let input_array_ref: ArrayRef = Arc :: new ( StringArray :: from ( vec ! [ Some ( input_json) ] ) ) ;
317- let input_variant_array_ref = ArrayRef :: from ( json_to_variant ( & input_array_ref) . unwrap ( ) ) ;
317+ let input_variant_array_ref =
318+ Arc :: new ( json_to_variant ( & input_array_ref) . unwrap ( ) ) as ArrayRef ;
318319
319320 let result =
320321 variant_get ( & input_variant_array_ref, GetOptions :: new_with_path ( path) ) . unwrap ( ) ;
@@ -452,9 +453,9 @@ mod test {
452453 . with_field( "value" , Arc :: new( values) , true )
453454 . with_nulls( nulls)
454455 . build( ) ;
455- ArrayRef :: from (
456- VariantArray :: try_new( & struct_array) . expect( "should create variant array" ) ,
457- )
456+
457+ Arc :: new ( VariantArray :: try_new( & struct_array) . expect( "should create variant array" ) )
458+ as ArrayRef
458459 }
459460 } ;
460461 }
@@ -779,9 +780,10 @@ mod test {
779780 . with_field( "typed_value" , Arc :: new( typed_value) , true )
780781 . build( ) ;
781782
782- VariantArray :: try_new( & struct_array)
783- . expect( "should create variant array" )
784- . into( )
783+ let variant_array =
784+ VariantArray :: try_new( & struct_array) . expect( "should create variant array" ) ;
785+
786+ Arc :: new( variant_array) as ArrayRef
785787 }
786788 } ;
787789 }
@@ -1189,9 +1191,10 @@ mod test {
11891191 . with_nulls( nulls)
11901192 . build( ) ;
11911193
1192- ArrayRef :: from(
1193- VariantArray :: try_new( & struct_array) . expect( "should create variant array" ) ,
1194- )
1194+ let variant_array =
1195+ VariantArray :: try_new( & struct_array) . expect( "should create variant array" ) ;
1196+
1197+ Arc :: new( variant_array) as ArrayRef
11951198 }
11961199 } ;
11971200 }
@@ -1642,7 +1645,8 @@ mod test {
16421645 }
16431646 }
16441647
1645- ArrayRef :: from ( builder. build ( ) )
1648+ let variant_array = builder. build ( ) ;
1649+ Arc :: new ( variant_array) as _
16461650 }
16471651
16481652 /// Create test data for depth 1 (single nested field)
@@ -1672,7 +1676,7 @@ mod test {
16721676 }
16731677 }
16741678
1675- ArrayRef :: from ( builder. build ( ) )
1679+ Arc :: new ( builder. build ( ) ) as _
16761680 }
16771681
16781682 /// Create test data for depth 2 (double nested field)
@@ -1713,7 +1717,7 @@ mod test {
17131717 }
17141718 }
17151719
1716- ArrayRef :: from ( builder. build ( ) )
1720+ Arc :: new ( builder. build ( ) ) as _
17171721 }
17181722
17191723 /// Create simple shredded test data for depth 0 using a simplified working pattern
@@ -2182,7 +2186,7 @@ mod test {
21822186 cast_options : CastOptions :: default ( ) ,
21832187 } ;
21842188
2185- let variant_array_ref = ArrayRef :: from ( variant_array) ;
2189+ let variant_array_ref = Arc :: new ( variant_array) as ArrayRef ;
21862190 let result = variant_get ( & variant_array_ref, options) . unwrap ( ) ;
21872191
21882192 // Verify the result is a StructArray
@@ -2260,7 +2264,7 @@ mod test {
22602264 cast_options : CastOptions :: default ( ) ,
22612265 } ;
22622266
2263- let variant_array_ref = ArrayRef :: from ( variant_array) ;
2267+ let variant_array_ref = Arc :: new ( variant_array) as ArrayRef ;
22642268 let result_nullable = variant_get ( & variant_array_ref, options_nullable) . unwrap ( ) ;
22652269
22662270 // Verify we get an Int32Array with nulls for cast failures
@@ -2315,7 +2319,7 @@ mod test {
23152319
23162320 // Create variant array again since we moved it
23172321 let variant_array_2 = json_to_variant ( & string_array) . unwrap ( ) ;
2318- let variant_array_ref_2 = ArrayRef :: from ( variant_array_2) ;
2322+ let variant_array_ref_2 = Arc :: new ( variant_array_2) as ArrayRef ;
23192323 let result_non_nullable = variant_get ( & variant_array_ref_2, options_non_nullable) . unwrap ( ) ;
23202324 let int32_result_2 = result_non_nullable
23212325 . as_any ( )
@@ -2632,7 +2636,7 @@ mod test {
26322636 cast_options : CastOptions :: default ( ) ,
26332637 } ;
26342638
2635- let variant_array_ref = ArrayRef :: from ( variant_array) ;
2639+ let variant_array_ref = Arc :: new ( variant_array) as ArrayRef ;
26362640 let result = variant_get ( & variant_array_ref, options) ;
26372641
26382642 // Should fail with NotYetImplemented when the row builder tries to handle struct type
0 commit comments