pub struct PyScalar { /* private fields */ }
Expand description
A Python-facing Arrow scalar
Implementations§
Source§impl PyScalar
impl PyScalar
Sourcepub unsafe fn new_unchecked(array: ArrayRef, field: FieldRef) -> Self
pub unsafe fn new_unchecked(array: ArrayRef, field: FieldRef) -> Self
Create a new PyScalar without any checks
§Safety
- The array’s DataType must match the field’s DataType
- The array must have length 1
Sourcepub fn try_from_array_ref(array: ArrayRef) -> PyArrowResult<Self>
pub fn try_from_array_ref(array: ArrayRef) -> PyArrowResult<Self>
Create a new PyArray from an ArrayRef, inferring its data type automatically.
Sourcepub fn try_new(array: ArrayRef, field: FieldRef) -> PyArrowResult<Self>
pub fn try_new(array: ArrayRef, field: FieldRef) -> PyArrowResult<Self>
Create a new PyScalar
This will error if the arrays’ data type does not match the field’s data type or if the length of the array is not 1.
Sourcepub fn try_from_arrow_pycapsule(
schema_capsule: &Bound<'_, PyCapsule>,
array_capsule: &Bound<'_, PyCapsule>,
) -> PyArrowResult<Self>
pub fn try_from_arrow_pycapsule( schema_capsule: &Bound<'_, PyCapsule>, array_capsule: &Bound<'_, PyCapsule>, ) -> PyArrowResult<Self>
Import from raw Arrow capsules
Sourcepub fn into_inner(self) -> (ArrayRef, FieldRef)
pub fn into_inner(self) -> (ArrayRef, FieldRef)
Trait Implementations§
Source§impl From<PyScalar> for Arro3Scalar
impl From<PyScalar> for Arro3Scalar
Source§impl<'a> FromPyObject<'a> for PyScalar
impl<'a> FromPyObject<'a> for PyScalar
Source§impl<'py> IntoPyObject<'py> for PyScalar
impl<'py> IntoPyObject<'py> for PyScalar
Source§type Output = Bound<'py, <PyScalar as IntoPyObject<'py>>::Target>
type Output = Bound<'py, <PyScalar as IntoPyObject<'py>>::Target>
The smart pointer type to use. Read more
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>
Performs the conversion.
Source§impl PyClassBaseType for PyScalar
impl PyClassBaseType for PyScalar
type LayoutAsBase = PyClassObject<PyScalar>
type BaseNativeType = <PyScalar as PyClassImpl>::BaseNativeType
type Initializer = PyClassInitializer<PyScalar>
type PyClassMutability = <PyScalar as PyClassImpl>::PyClassMutability
Source§impl PyClassImpl for PyScalar
impl PyClassImpl for PyScalar
Source§const IS_BASETYPE: bool = true
const IS_BASETYPE: bool = true
#[pyclass(subclass)]
Source§const IS_SUBCLASS: bool = false
const IS_SUBCLASS: bool = false
#[pyclass(extends=…)]
Source§const IS_MAPPING: bool = false
const IS_MAPPING: bool = false
#[pyclass(mapping)]
Source§const IS_SEQUENCE: bool = false
const IS_SEQUENCE: bool = false
#[pyclass(sequence)]
Source§const IS_IMMUTABLE_TYPE: bool = false
const IS_IMMUTABLE_TYPE: bool = false
#[pyclass(immutable_type)]
Source§const RAW_DOC: &'static CStr = /// A Python-facing Arrow scalar
const RAW_DOC: &'static CStr = /// A Python-facing Arrow scalar
Docstring for the class provided on the struct or enum. Read more
Source§const DOC: &'static CStr
const DOC: &'static CStr
Fully rendered class doc, including the
text_signature
if a constructor is defined. Read moreSource§type ThreadChecker = SendablePyClass<PyScalar>
type ThreadChecker = SendablePyClass<PyScalar>
This handles following two situations: Read more
Source§type PyClassMutability = <<PyAny as PyClassBaseType>::PyClassMutability as PyClassMutability>::ImmutableChild
type PyClassMutability = <<PyAny as PyClassBaseType>::PyClassMutability as PyClassMutability>::ImmutableChild
Immutable or mutable
Source§type BaseNativeType = PyAny
type BaseNativeType = PyAny
The closest native ancestor. This is
PyAny
by default, and when you declare
#[pyclass(extends=PyDict)]
, it’s PyDict
.fn items_iter() -> PyClassItemsIter
fn lazy_type_object() -> &'static LazyTypeObject<Self>
fn dict_offset() -> Option<isize>
fn weaklist_offset() -> Option<isize>
Source§impl PyClassNewTextSignature for PyScalar
impl PyClassNewTextSignature for PyScalar
const TEXT_SIGNATURE: &'static str = "(obj, /, type=...)"
Source§impl PyMethods<PyScalar> for PyClassImplCollector<PyScalar>
impl PyMethods<PyScalar> for PyClassImplCollector<PyScalar>
fn py_methods(self) -> &'static PyClassItems
Source§impl PyTypeInfo for PyScalar
impl PyTypeInfo for PyScalar
Source§fn type_object_raw(py: Python<'_>) -> *mut PyTypeObject
fn type_object_raw(py: Python<'_>) -> *mut PyTypeObject
Returns the PyTypeObject instance for this type.
Source§fn type_object(py: Python<'_>) -> Bound<'_, PyType>
fn type_object(py: Python<'_>) -> Bound<'_, PyType>
Returns the safe abstraction over the type object.
impl DerefToPyAny for PyScalar
Auto Trait Implementations§
impl Freeze for PyScalar
impl !RefUnwindSafe for PyScalar
impl Send for PyScalar
impl Sync for PyScalar
impl Unpin for PyScalar
impl !UnwindSafe for PyScalar
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
Mutably borrows from an owned value. Read more
Source§impl<'py, T> FromPyObjectBound<'_, 'py> for Twhere
T: FromPyObject<'py>,
impl<'py, T> FromPyObjectBound<'_, 'py> for Twhere
T: FromPyObject<'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>
Converts
self
into an owned Python object, dropping type information.