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 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<PyDataType> for PyDataType
impl PartialEq<PyDataType> for PyDataType
source§fn eq(&self, other: &PyDataType) -> bool
fn eq(&self, other: &PyDataType) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.source§impl PartialOrd<PyDataType> for PyDataType
impl PartialOrd<PyDataType> for PyDataType
source§fn partial_cmp(&self, other: &PyDataType) -> Option<Ordering>
fn partial_cmp(&self, other: &PyDataType) -> Option<Ordering>
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for
self
and other
) and is used by the <=
operator. Read moresource§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 Layout = PyCell<PyDataType>
type Layout = PyCell<PyDataType>
Layout
§type ThreadChecker = ThreadCheckerStub<PyDataType>
type ThreadChecker = ThreadCheckerStub<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
§type AsRefTarget = PyCell<PyDataType>
type AsRefTarget = PyCell<PyDataType>
Utility type to make Py::as_ref work.
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
Returns the safe abstraction over the type object.
source§fn is_type_of(object: &PyAny) -> bool
fn is_type_of(object: &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
Checks if
object
is an instance of this type.impl Eq for PyDataType
impl StructuralEq for PyDataType
impl StructuralPartialEq for PyDataType
Auto Trait Implementations§
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
§impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
§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<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.