Struct datafusion_python::common::data_type::PyDataType
source · pub struct PyDataType {
pub data_type: DataType,
}
Expand description
PyO3 requires that objects passed between Rust and Python implement the trait PyClass
Since DataType
exists in another package we cannot make that happen here so we wrap
DataType
as PyDataType
This exists solely to satisfy those constraints.
Fields§
§data_type: DataType
Implementations§
source§impl PyDataType
impl PyDataType
sourcepub fn py_map_from_arrow_type_str(
arrow_str_type: String,
) -> PyResult<PyDataType>
pub fn py_map_from_arrow_type_str( arrow_str_type: String, ) -> PyResult<PyDataType>
There are situations when obtaining dtypes on the Python side where the Arrow type is presented as a String rather than an actual DataType. This function is used to convert that String to a DataType for the Python side to use.
Trait Implementations§
source§impl Clone for PyDataType
impl Clone for PyDataType
source§fn clone(&self) -> PyDataType
fn clone(&self) -> PyDataType
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for PyDataType
impl Debug for PyDataType
source§impl From<DataType> for PyDataType
impl From<DataType> for PyDataType
source§fn from(data_type: DataType) -> PyDataType
fn from(data_type: DataType) -> PyDataType
Converts to this type from the input type.
source§impl From<PyDataType> for DataType
impl From<PyDataType> for DataType
source§fn from(data_type: PyDataType) -> DataType
fn from(data_type: PyDataType) -> DataType
Converts to this type from the input type.
source§impl HasPyGilRef for PyDataType
impl HasPyGilRef for PyDataType
§type AsRefTarget = PyCell<PyDataType>
type AsRefTarget = PyCell<PyDataType>
Utility type to make Py::as_ref work.
source§impl Hash for PyDataType
impl Hash for PyDataType
source§impl Ord for PyDataType
impl Ord for PyDataType
source§fn cmp(&self, other: &PyDataType) -> Ordering
fn cmp(&self, other: &PyDataType) -> Ordering
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
source§impl PartialEq for PyDataType
impl PartialEq for PyDataType
source§impl PartialOrd for PyDataType
impl PartialOrd for PyDataType
source§impl PyClassImpl for PyDataType
impl PyClassImpl for PyDataType
source§const IS_BASETYPE: bool = false
const IS_BASETYPE: bool = false
#[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)]
§type ThreadChecker = SendablePyClass<PyDataType>
type ThreadChecker = SendablePyClass<PyDataType>
This handles following two situations: Read more
§type PyClassMutability = <<PyAny as PyClassBaseType>::PyClassMutability as PyClassMutability>::MutableChild
type PyClassMutability = <<PyAny as PyClassBaseType>::PyClassMutability as PyClassMutability>::MutableChild
Immutable or mutable
§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<'a, 'py> PyFunctionArgument<'a, 'py> for &'a PyDataType
impl<'a, 'py> PyFunctionArgument<'a, 'py> for &'a PyDataType
source§impl<'a, 'py> PyFunctionArgument<'a, 'py> for &'a mut PyDataType
impl<'a, 'py> PyFunctionArgument<'a, 'py> for &'a mut PyDataType
source§impl PyTypeInfo for PyDataType
impl PyTypeInfo for PyDataType
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<'_>) -> &PyType
fn type_object(py: Python<'_>) -> &PyType
👎Deprecated since 0.21.0:
PyTypeInfo::type_object
will be replaced by PyTypeInfo::type_object_bound
in a future PyO3 versionReturns the safe abstraction over the type object.
source§fn type_object_bound(py: Python<'_>) -> Bound<'_, PyType>
fn type_object_bound(py: Python<'_>) -> Bound<'_, PyType>
Returns the safe abstraction over the type object.
source§fn is_type_of(object: &PyAny) -> bool
fn is_type_of(object: &PyAny) -> bool
👎Deprecated since 0.21.0:
PyTypeInfo::is_type_of
will be replaced by PyTypeInfo::is_type_of_bound
in a future PyO3 versionChecks if
object
is an instance of this type or a subclass of this type.source§fn is_type_of_bound(object: &Bound<'_, PyAny>) -> bool
fn is_type_of_bound(object: &Bound<'_, PyAny>) -> bool
Checks if
object
is an instance of this type or a subclass of this type.source§fn is_exact_type_of(object: &PyAny) -> bool
fn is_exact_type_of(object: &PyAny) -> bool
👎Deprecated since 0.21.0:
PyTypeInfo::is_exact_type_of
will be replaced by PyTypeInfo::is_exact_type_of_bound
in a future PyO3 versionChecks if
object
is an instance of this type.impl DerefToPyAny for PyDataType
impl Eq for PyDataType
impl StructuralPartialEq for PyDataType
Auto Trait Implementations§
impl Freeze for PyDataType
impl RefUnwindSafe for PyDataType
impl Send for PyDataType
impl Sync for PyDataType
impl Unpin for PyDataType
impl UnwindSafe for PyDataType
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<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)source§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.source§impl<T> FromPyObject<'_> for T
impl<T> FromPyObject<'_> for T
source§impl<'py, T> FromPyObjectBound<'_, 'py> for Twhere
T: FromPyObject<'py>,
impl<'py, T> FromPyObjectBound<'_, 'py> for Twhere
T: FromPyObject<'py>,
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more