tustvold commented on code in PR #4707:
URL: https://github.com/apache/arrow-rs/pull/4707#discussion_r1322097997


##########
arrow-arith/src/arity.rs:
##########
@@ -105,10 +105,11 @@ where
 
     let dict_values = array.values().as_any().downcast_ref().unwrap();
     let values = try_unary::<T, F, T>(dict_values, op)?;
-    Ok(Arc::new(array.with_values(&values)))
+    Ok(Arc::new(array.with_values(Arc::new(values))))
 }
 
 /// Applies an infallible unary function to an array with primitive values.
+#[deprecated(note = "Use arrow_array::AnyDictionaryArray")]

Review Comment:
   >  it does call unary_dict which preserves the dictionary right?
   
   Aah yeah sorry, I'm confusing this with one of the other recently removed 
APIs
   
   > I'm thinking we can come up with a new implementation for unary_dyn 
without the key type enumeration problem
   
   We could do, I would prefer to encourage users to not implement type 
dispatch at this level. Why duplicate the any-dictionary dispatch logic for 
every type of primitive value, and not just handle the dispatch logic once?



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to