timsaucer commented on code in PR #21030:
URL: https://github.com/apache/datafusion/pull/21030#discussion_r3124100667


##########
datafusion/ffi/src/util.rs:
##########
@@ -17,59 +17,63 @@
 
 use std::sync::Arc;
 
-use abi_stable::std_types::{RResult, RString, RVec};
 use arrow::datatypes::{DataType, Field};
 use arrow::ffi::FFI_ArrowSchema;
 use arrow_schema::FieldRef;
+use stabby::string::String as SString;
+use stabby::vec::Vec as SVec;
 
 use crate::arrow_wrappers::WrappedSchema;
 
+// Re-export for convenience
+pub use crate::ffi_option::{FFI_Option, FFI_Result};
+
 /// Convenience type for results passed through the FFI boundary. Since the
 /// `DataFusionError` enum is complex and little value is gained from creating
 /// a FFI safe variant of it, we convert errors to strings when passing results
-/// back. These are converted back and forth using the `df_result`, `rresult`,
-/// and `rresult_return` macros.
-pub type FFIResult<T> = RResult<T, RString>;
+/// back. These are converted back and forth using the `df_result`, `sresult`,
+/// and `sresult_return` macros.
+pub type FFIResult<T> = FFI_Result<T, SString>;

Review Comment:
   Having both a `FFIResult<T>` and a `FFI_Result<T, SString>` is confusing. 
Can we merge down to one?



##########
datafusion/ffi/README.md:
##########
@@ -65,7 +65,7 @@ to work across Rust libraries. In general, you can use Rust's 
[FFI] to
 operate across different programming languages, but that is not the design
 intent of this crate. Instead, we are using external crates that provide
 stable interfaces that closely mirror the Rust native approach. To learn more
-about this approach see the [abi_stable] and [async-ffi] crates.
+about this approach see the [stabby] and [async-ffi] crates.
 
 If you have a library in another language that you wish to interface to
 DataFusion the recommendation is to create a Rust wrapper crate to interface

Review Comment:
   For users who are interested in working on this code, they will probably ask 
themselves the same thing I asked. Why is it we are not using the core features 
of stabby? You and I have both come to the same conclusion that especially with 
the work on getting the record batch stream converted over to using stabby it 
turns into a much different project, especially 



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


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to