#[repr(C)]pub struct ArrowSchema {
pub format: *const c_char,
pub name: *const c_char,
pub metadata: *const c_char,
pub flags: i64,
pub n_children: i64,
pub children: *mut *mut ArrowSchema,
pub dictionary: *mut ArrowSchema,
pub release: Option<unsafe extern "C" fn(schema: *mut ArrowSchema)>,
pub private_data: *mut c_void,
}Expand description
ArrowSchema C Data Interface.
See: https://arrow.apache.org/docs/format/CDataInterface.html#the-arrowschema-structure
Ownership: This type has no Drop impl. Callers must invoke the
release callback (if Some) before dropping to free resources.
Fields§
§format: *const c_char§name: *const c_char§metadata: *const c_char§flags: i64§n_children: i64§children: *mut *mut ArrowSchema§dictionary: *mut ArrowSchema§release: Option<unsafe extern "C" fn(schema: *mut ArrowSchema)>§private_data: *mut c_voidImplementations§
Source§impl ArrowSchema
impl ArrowSchema
Sourcepub fn is_released(&self) -> bool
pub fn is_released(&self) -> bool
Whether this schema has been released (release callback is None).
Sourcepub unsafe fn from_raw<T>(ptr: &T) -> &Self
pub unsafe fn from_raw<T>(ptr: &T) -> &Self
Borrow a foreign C Data Interface schema as ours (zero-copy).
§Safety
T must have the Arrow C Data Interface ArrowSchema memory layout.
Sourcepub unsafe fn from_raw_mut<T>(ptr: &mut T) -> &mut Self
pub unsafe fn from_raw_mut<T>(ptr: &mut T) -> &mut Self
Mutably borrow a foreign C Data Interface schema as ours (zero-copy).
§Safety
T must have the Arrow C Data Interface ArrowSchema memory layout.
Sourcepub unsafe fn as_raw<T>(&self) -> &T
pub unsafe fn as_raw<T>(&self) -> &T
Borrow ours as a foreign C Data Interface schema type (zero-copy).
§Safety
T must have the Arrow C Data Interface ArrowSchema memory layout.
Sourcepub unsafe fn from_owned<T>(val: T) -> Self
pub unsafe fn from_owned<T>(val: T) -> Self
Take ownership of a foreign C Data Interface schema.
§Safety
Tmust have the Arrow C Data InterfaceArrowSchemamemory layout.- Ownership transfers — the caller must not use or drop the original.
Sourcepub unsafe fn into_owned<T>(self) -> T
pub unsafe fn into_owned<T>(self) -> T
Convert into a foreign C Data Interface schema type.
§Safety
Tmust have the Arrow C Data InterfaceArrowSchemamemory layout.- Ownership transfers — the caller must not use or drop the original.