This is an automated email from the ASF dual-hosted git repository.
alamb pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/arrow-rs.git
The following commit(s) were added to refs/heads/master by this push:
new 9d060194f Use c_char instead of i8 to compile on platforms where
c_char = u8 (#6572)
9d060194f is described below
commit 9d060194ff2aef9fe069c0b1169ffbc07ac32b70
Author: June <[email protected]>
AuthorDate: Thu Oct 17 04:44:13 2024 -0600
Use c_char instead of i8 to compile on platforms where c_char = u8 (#6572)
---
arrow-integration-testing/src/lib.rs | 30 +++++++++++++++---------------
1 file changed, 15 insertions(+), 15 deletions(-)
diff --git a/arrow-integration-testing/src/lib.rs
b/arrow-integration-testing/src/lib.rs
index ba8e3876c..c8ce01e9f 100644
--- a/arrow-integration-testing/src/lib.rs
+++ b/arrow-integration-testing/src/lib.rs
@@ -28,7 +28,7 @@ use arrow::record_batch::RecordBatch;
use arrow::util::test_util::arrow_test_data;
use arrow_integration_test::*;
use std::collections::HashMap;
-use std::ffi::{c_int, CStr, CString};
+use std::ffi::{c_char, c_int, CStr, CString};
use std::fs::File;
use std::io::BufReader;
use std::iter::zip;
@@ -165,7 +165,7 @@ pub fn read_gzip_json(version: &str, path: &str) ->
ArrowJson {
/// C Data Integration entrypoint to export the schema from a JSON file
fn cdata_integration_export_schema_from_json(
- c_json_name: *const i8,
+ c_json_name: *const c_char,
out: *mut FFI_ArrowSchema,
) -> Result<()> {
let json_name = unsafe { CStr::from_ptr(c_json_name) };
@@ -178,7 +178,7 @@ fn cdata_integration_export_schema_from_json(
/// C Data Integration entrypoint to export a batch from a JSON file
fn cdata_integration_export_batch_from_json(
- c_json_name: *const i8,
+ c_json_name: *const c_char,
batch_num: c_int,
out: *mut FFI_ArrowArray,
) -> Result<()> {
@@ -192,7 +192,7 @@ fn cdata_integration_export_batch_from_json(
}
fn cdata_integration_import_schema_and_compare_to_json(
- c_json_name: *const i8,
+ c_json_name: *const c_char,
c_schema: *mut FFI_ArrowSchema,
) -> Result<()> {
let json_name = unsafe { CStr::from_ptr(c_json_name) };
@@ -229,7 +229,7 @@ fn compare_batches(a: &RecordBatch, b: &RecordBatch) ->
Result<()> {
}
fn cdata_integration_import_batch_and_compare_to_json(
- c_json_name: *const i8,
+ c_json_name: *const c_char,
batch_num: c_int,
c_array: *mut FFI_ArrowArray,
) -> Result<()> {
@@ -248,7 +248,7 @@ fn cdata_integration_import_batch_and_compare_to_json(
}
// If Result is an error, then export a const char* to its string display,
otherwise NULL
-fn result_to_c_error<T, E: std::fmt::Display>(result: &std::result::Result<T,
E>) -> *mut i8 {
+fn result_to_c_error<T, E: std::fmt::Display>(result: &std::result::Result<T,
E>) -> *mut c_char {
match result {
Ok(_) => ptr::null_mut(),
Err(e) => CString::new(format!("{}", e)).unwrap().into_raw(),
@@ -261,7 +261,7 @@ fn result_to_c_error<T, E: std::fmt::Display>(result:
&std::result::Result<T, E>
///
/// The pointer is assumed to have been obtained using CString::into_raw.
#[no_mangle]
-pub unsafe extern "C" fn arrow_rs_free_error(c_error: *mut i8) {
+pub unsafe extern "C" fn arrow_rs_free_error(c_error: *mut c_char) {
if !c_error.is_null() {
drop(unsafe { CString::from_raw(c_error) });
}
@@ -270,9 +270,9 @@ pub unsafe extern "C" fn arrow_rs_free_error(c_error: *mut
i8) {
/// A C-ABI for exporting an Arrow schema from a JSON file
#[no_mangle]
pub extern "C" fn arrow_rs_cdata_integration_export_schema_from_json(
- c_json_name: *const i8,
+ c_json_name: *const c_char,
out: *mut FFI_ArrowSchema,
-) -> *mut i8 {
+) -> *mut c_char {
let r = cdata_integration_export_schema_from_json(c_json_name, out);
result_to_c_error(&r)
}
@@ -280,9 +280,9 @@ pub extern "C" fn
arrow_rs_cdata_integration_export_schema_from_json(
/// A C-ABI to compare an Arrow schema against a JSON file
#[no_mangle]
pub extern "C" fn arrow_rs_cdata_integration_import_schema_and_compare_to_json(
- c_json_name: *const i8,
+ c_json_name: *const c_char,
c_schema: *mut FFI_ArrowSchema,
-) -> *mut i8 {
+) -> *mut c_char {
let r = cdata_integration_import_schema_and_compare_to_json(c_json_name,
c_schema);
result_to_c_error(&r)
}
@@ -290,10 +290,10 @@ pub extern "C" fn
arrow_rs_cdata_integration_import_schema_and_compare_to_json(
/// A C-ABI for exporting a RecordBatch from a JSON file
#[no_mangle]
pub extern "C" fn arrow_rs_cdata_integration_export_batch_from_json(
- c_json_name: *const i8,
+ c_json_name: *const c_char,
batch_num: c_int,
out: *mut FFI_ArrowArray,
-) -> *mut i8 {
+) -> *mut c_char {
let r = cdata_integration_export_batch_from_json(c_json_name, batch_num,
out);
result_to_c_error(&r)
}
@@ -301,10 +301,10 @@ pub extern "C" fn
arrow_rs_cdata_integration_export_batch_from_json(
/// A C-ABI to compare a RecordBatch against a JSON file
#[no_mangle]
pub extern "C" fn arrow_rs_cdata_integration_import_batch_and_compare_to_json(
- c_json_name: *const i8,
+ c_json_name: *const c_char,
batch_num: c_int,
c_array: *mut FFI_ArrowArray,
-) -> *mut i8 {
+) -> *mut c_char {
let r = cdata_integration_import_batch_and_compare_to_json(c_json_name,
batch_num, c_array);
result_to_c_error(&r)
}