pub struct PyArray { /* private fields */ }Expand description
A Python-facing Arrow array.
This is a wrapper around an ArrayRef and a FieldRef.
It’s important for this to wrap both an array and a field so that it can faithfully store all
data transmitted via the __arrow_c_array__ Python method, which exports both an Array and a
Field.
In particular, storing a FieldRef is required to persist Arrow extension metadata through the
C Data Interface.
Implementations§
Source§impl PyArray
impl PyArray
Sourcepub fn from_array_ref(array: ArrayRef) -> Self
pub fn from_array_ref(array: ArrayRef) -> Self
Create a new PyArray from an ArrayRef, inferring its data type automatically.
Sourcepub fn from_arrow_pycapsule(
schema_capsule: &Bound<'_, PyCapsule>,
array_capsule: &Bound<'_, PyCapsule>,
) -> PyResult<Self>
pub fn from_arrow_pycapsule( schema_capsule: &Bound<'_, PyCapsule>, array_capsule: &Bound<'_, PyCapsule>, ) -> PyResult<Self>
Import from raw Arrow capsules
Sourcepub fn into_inner(self) -> (ArrayRef, FieldRef)
pub fn into_inner(self) -> (ArrayRef, FieldRef)
Sourcepub fn to_arro3<'py>(&'py self, py: Python<'py>) -> PyResult<Bound<'py, PyAny>>
pub fn to_arro3<'py>(&'py self, py: Python<'py>) -> PyResult<Bound<'py, PyAny>>
Export to an arro3.core.Array.
This requires that you depend on arro3-core from your Python package.
Sourcepub fn into_arro3(self, py: Python<'_>) -> PyResult<Bound<'_, PyAny>>
pub fn into_arro3(self, py: Python<'_>) -> PyResult<Bound<'_, PyAny>>
Export to an arro3.core.Array.
This requires that you depend on arro3-core from your Python package.
Trait Implementations§
impl DerefToPyAny for PyArray
impl ExtractPyClassWithClone for PyArray
Source§impl From<PyArray> for Arro3Array
impl From<PyArray> for Arro3Array
Source§impl<'py> FromPyObject<'_, 'py> for PyArray
impl<'py> FromPyObject<'_, 'py> for PyArray
Source§impl<'py> IntoPyObject<'py> for PyArray
impl<'py> IntoPyObject<'py> for PyArray
Source§type Output = Bound<'py, <PyArray as IntoPyObject<'py>>::Target>
type Output = Bound<'py, <PyArray as IntoPyObject<'py>>::Target>
Source§fn into_pyobject(
self,
py: Python<'py>,
) -> Result<<Self as IntoPyObject<'_>>::Output, <Self as IntoPyObject<'_>>::Error>
fn into_pyobject( self, py: Python<'py>, ) -> Result<<Self as IntoPyObject<'_>>::Output, <Self as IntoPyObject<'_>>::Error>
Source§impl PyClassBaseType for PyArray
impl PyClassBaseType for PyArray
type LayoutAsBase = <PyArray as PyClassImpl>::Layout
type BaseNativeType = <PyArray as PyClassImpl>::BaseNativeType
type Initializer = PyClassInitializer<PyArray>
type PyClassMutability = <PyArray as PyClassImpl>::PyClassMutability
Source§impl PyClassImpl for PyArray
impl PyClassImpl for PyArray
Source§const IS_BASETYPE: bool = true
const IS_BASETYPE: bool = true
Source§const IS_SUBCLASS: bool = false
const IS_SUBCLASS: bool = false
Source§const IS_MAPPING: bool = false
const IS_MAPPING: bool = false
Source§const IS_SEQUENCE: bool = false
const IS_SEQUENCE: bool = false
Source§const IS_IMMUTABLE_TYPE: bool = false
const IS_IMMUTABLE_TYPE: bool = false
Source§const RAW_DOC: &'static CStr = /// A Python-facing Arrow array.
///
/// This is a wrapper around an [ArrayRef] and a [FieldRef].
///
/// It's important for this to wrap both an array _and_ a field so that it can faithfully store all
/// data transmitted via the `__arrow_c_array__` Python method, which [exports both an Array and a
/// Field](https://arrow.apache.org/docs/format/CDataInterface/PyCapsuleInterface.html#arrow_c_array__).
/// In particular, storing a [FieldRef] is required to persist Arrow extension metadata through the
/// C Data Interface.
const RAW_DOC: &'static CStr = /// A Python-facing Arrow array. /// /// This is a wrapper around an [ArrayRef] and a [FieldRef]. /// /// It's important for this to wrap both an array _and_ a field so that it can faithfully store all /// data transmitted via the `__arrow_c_array__` Python method, which [exports both an Array and a /// Field](https://arrow.apache.org/docs/format/CDataInterface/PyCapsuleInterface.html#arrow_c_array__). /// In particular, storing a [FieldRef] is required to persist Arrow extension metadata through the /// C Data Interface.
Source§const DOC: &'static CStr
const DOC: &'static CStr
text_signature if a constructor is defined. Read moreSource§type Layout = <<PyArray as PyClassImpl>::BaseNativeType as PyClassBaseType>::Layout<PyArray>
type Layout = <<PyArray as PyClassImpl>::BaseNativeType as PyClassBaseType>::Layout<PyArray>
Source§type ThreadChecker = NoopThreadChecker
type ThreadChecker = NoopThreadChecker
Source§type PyClassMutability = <<PyAny as PyClassBaseType>::PyClassMutability as PyClassMutability>::ImmutableChild
type PyClassMutability = <<PyAny as PyClassBaseType>::PyClassMutability as PyClassMutability>::ImmutableChild
Source§type BaseNativeType = PyAny
type BaseNativeType = PyAny
PyAny by default, and when you declare
#[pyclass(extends=PyDict)], it’s PyDict.fn items_iter() -> PyClassItemsIter
fn lazy_type_object() -> &'static LazyTypeObject<Self>
Source§fn dict_offset() -> Option<PyObjectOffset>
fn dict_offset() -> Option<PyObjectOffset>
Source§fn weaklist_offset() -> Option<PyObjectOffset>
fn weaklist_offset() -> Option<PyObjectOffset>
Source§impl PyClassNewTextSignature for PyArray
impl PyClassNewTextSignature for PyArray
const TEXT_SIGNATURE: &'static str = "(obj, /, type=None)"
Source§impl PyMethods<PyArray> for PyClassImplCollector<PyArray>
impl PyMethods<PyArray> for PyClassImplCollector<PyArray>
fn py_methods(self) -> &'static PyClassItems
Source§impl PyTypeInfo for PyArray
impl PyTypeInfo for PyArray
Source§const NAME: &str = <Self as ::pyo3::PyClass>::NAME
const NAME: &str = <Self as ::pyo3::PyClass>::NAME
prefer using ::type_object(py).name() to get the correct runtime value
Source§const MODULE: Option<&str> = <Self as ::pyo3::impl_::pyclass::PyClassImpl>::MODULE
const MODULE: Option<&str> = <Self as ::pyo3::impl_::pyclass::PyClassImpl>::MODULE
prefer using ::type_object(py).module() to get the correct runtime value
Source§fn type_object_raw(py: Python<'_>) -> *mut PyTypeObject
fn type_object_raw(py: Python<'_>) -> *mut PyTypeObject
Source§fn type_object(py: Python<'_>) -> Bound<'_, PyType>
fn type_object(py: Python<'_>) -> Bound<'_, PyType>
Source§impl TryFrom<AnyBufferProtocol> for PyArray
impl TryFrom<AnyBufferProtocol> for PyArray
Source§type Error = PyArrowError
type Error = PyArrowError
Auto Trait Implementations§
impl !RefUnwindSafe for PyArray
impl !UnwindSafe for PyArray
impl Freeze for PyArray
impl Send for PyArray
impl Sync for PyArray
impl Unpin for PyArray
impl UnsafeUnpin for PyArray
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<'py, T> FromPyObjectOwned<'py> for Twhere
T: for<'a> FromPyObject<'a, 'py>,
Source§impl<'py, T> IntoPyObjectExt<'py> for Twhere
T: IntoPyObject<'py>,
impl<'py, T> IntoPyObjectExt<'py> for Twhere
T: IntoPyObject<'py>,
Source§fn into_bound_py_any(self, py: Python<'py>) -> Result<Bound<'py, PyAny>, PyErr>
fn into_bound_py_any(self, py: Python<'py>) -> Result<Bound<'py, PyAny>, PyErr>
self into an owned Python object, dropping type information.