wjones127 opened a new pull request, #3582:
URL: https://github.com/apache/arrow-rs/pull/3582

   # Which issue does this PR close?
   
   Closes #3540.
   
   # Rationale for this change
    
   Rust is a good candidate for implementing an ADBC driver, but doing so 
involves quite a bit of `unsafe`. It would be nice to keep that `unsafe` code 
consolidated in one place, and allow implementors to interact instead with APIs 
that are more canonical Rust.
   
   # What changes are included in this PR?
   
   The PR adds a new `arrow_adbc` crate with three modules:
   
    * `ffi`: contains the FFI types corresponding to each of the structs in 
[adbc.h](https://github.com/apache/arrow-adbc/blob/main/adbc.h).
    * `error`: contains traits relevant to translating Rust error enums into 
the `FFI_AdbcError` struct and `AdbcStatusCode` enum.
    * `interface`: provides Rust traits to define behavior for each struct and 
a macro `adbc_api!()` that generates the ADBC API. Users simply have to 
implement each of the traits and call the macro.
   
   # Are there any user-facing changes?
   
   These are entirely new APIs. This PR will include documentation for all APIs.


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