singhpratech commented on PR #51236:
URL: https://github.com/apache/arrow/pull/51236#issuecomment-5704941591

   The methods are the public part already: `$export_to_c()` and 
`$import_from_c()` are what nanoarrow itself calls (`as_nanoarrow_array.Array` 
hands `x$export_to_c()` a `nanoarrow_allocate_array()`, and 
`as_arrow_array.nanoarrow_array` calls `arrow::Array$import_from_c()`), and 
25.0.0 has no help page for either. The six allocators already exist in the 
package for the Python bridge. The change exports them and documents the 
methods so a package that already depends on arrow can call arrow's own methods 
without `arrow:::` (which R CMD check flags) or a second dependency for a 
struct allocation. That is the whole case, and it is a small one.
   
   The case for nanoarrow instead is that it is the project's answer for the C 
Data Interface in R, one route is better than two, and the use case on the 
issue (r-polars) has since gone through nanoarrow. If that is where you would 
rather keep it, I will cut this to the documentation: the two methods on 
`?Array`, with the example allocating through nanoarrow, and drop the exports, 
the new test and the NEWS entry. Your call.


-- 
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