pub struct PySessionContext {
pub ctx: SessionContext,
}Expand description
PySessionContext is able to plan and execute DataFusion plans.
It has a powerful optimizer, a physical planner for local execution, and a
multi-threaded execution engine to perform the execution.
Fields§
§ctx: SessionContextImplementations§
Source§impl PySessionContext
impl PySessionContext
pub fn new( config: Option<PySessionConfig>, runtime: Option<PyRuntimeEnvBuilder>, ) -> PyDataFusionResult<Self>
pub fn enable_url_table(&self) -> PyResult<Self>
Sourcepub fn register_object_store(
&self,
scheme: &str,
store: StorageContexts,
host: Option<&str>,
) -> PyResult<()>
pub fn register_object_store( &self, scheme: &str, store: StorageContexts, host: Option<&str>, ) -> PyResult<()>
Register an object store with the given name
pub fn register_listing_table( &self, name: &str, path: &str, table_partition_cols: Vec<(String, PyArrowType<DataType>)>, file_extension: &str, schema: Option<PyArrowType<Schema>>, file_sort_order: Option<Vec<Vec<PySortExpr>>>, py: Python<'_>, ) -> PyDataFusionResult<()>
pub fn register_udtf(&self, func: PyTableFunction)
Sourcepub fn sql(
&self,
query: &str,
py: Python<'_>,
) -> PyDataFusionResult<PyDataFrame>
pub fn sql( &self, query: &str, py: Python<'_>, ) -> PyDataFusionResult<PyDataFrame>
Returns a PyDataFrame whose plan corresponds to the SQL statement.
pub fn sql_with_options( &self, query: &str, options: Option<PySQLOptions>, py: Python<'_>, ) -> PyDataFusionResult<PyDataFrame>
pub fn create_dataframe( &self, partitions: PyArrowType<Vec<Vec<RecordBatch>>>, name: Option<&str>, schema: Option<PyArrowType<Schema>>, py: Python<'_>, ) -> PyDataFusionResult<PyDataFrame>
Sourcepub fn create_dataframe_from_logical_plan(
&self,
plan: PyLogicalPlan,
) -> PyDataFrame
pub fn create_dataframe_from_logical_plan( &self, plan: PyLogicalPlan, ) -> PyDataFrame
Create a DataFrame from an existing logical plan
Sourcepub fn from_pylist(
&self,
data: Bound<'_, PyList>,
name: Option<&str>,
) -> PyResult<PyDataFrame>
pub fn from_pylist( &self, data: Bound<'_, PyList>, name: Option<&str>, ) -> PyResult<PyDataFrame>
Construct datafusion dataframe from Python list
Sourcepub fn from_pydict(
&self,
data: Bound<'_, PyDict>,
name: Option<&str>,
) -> PyResult<PyDataFrame>
pub fn from_pydict( &self, data: Bound<'_, PyDict>, name: Option<&str>, ) -> PyResult<PyDataFrame>
Construct datafusion dataframe from Python dictionary
Sourcepub fn from_arrow(
&self,
data: Bound<'_, PyAny>,
name: Option<&str>,
py: Python<'_>,
) -> PyDataFusionResult<PyDataFrame>
pub fn from_arrow( &self, data: Bound<'_, PyAny>, name: Option<&str>, py: Python<'_>, ) -> PyDataFusionResult<PyDataFrame>
Construct datafusion dataframe from Arrow Table
Sourcepub fn from_pandas(
&self,
data: Bound<'_, PyAny>,
name: Option<&str>,
) -> PyResult<PyDataFrame>
pub fn from_pandas( &self, data: Bound<'_, PyAny>, name: Option<&str>, ) -> PyResult<PyDataFrame>
Construct datafusion dataframe from pandas
Sourcepub fn from_polars(
&self,
data: Bound<'_, PyAny>,
name: Option<&str>,
) -> PyResult<PyDataFrame>
pub fn from_polars( &self, data: Bound<'_, PyAny>, name: Option<&str>, ) -> PyResult<PyDataFrame>
Construct datafusion dataframe from polars
pub fn register_table( &self, name: &str, table: Bound<'_, PyAny>, ) -> PyDataFusionResult<()>
pub fn deregister_table(&self, name: &str) -> PyDataFusionResult<()>
pub fn register_catalog_provider( &self, name: &str, provider: Bound<'_, PyAny>, ) -> PyDataFusionResult<()>
Sourcepub fn register_table_provider(
&self,
name: &str,
provider: Bound<'_, PyAny>,
) -> PyDataFusionResult<()>
pub fn register_table_provider( &self, name: &str, provider: Bound<'_, PyAny>, ) -> PyDataFusionResult<()>
Construct datafusion dataframe from Arrow Table
pub fn register_record_batches( &self, name: &str, partitions: PyArrowType<Vec<Vec<RecordBatch>>>, ) -> PyDataFusionResult<()>
pub fn register_parquet( &self, name: &str, path: &str, table_partition_cols: Vec<(String, PyArrowType<DataType>)>, parquet_pruning: bool, file_extension: &str, skip_metadata: bool, schema: Option<PyArrowType<Schema>>, file_sort_order: Option<Vec<Vec<PySortExpr>>>, py: Python<'_>, ) -> PyDataFusionResult<()>
pub fn register_csv( &self, name: &str, path: &Bound<'_, PyAny>, schema: Option<PyArrowType<Schema>>, has_header: bool, delimiter: &str, schema_infer_max_records: usize, file_extension: &str, file_compression_type: Option<String>, py: Python<'_>, ) -> PyDataFusionResult<()>
pub fn register_json( &self, name: &str, path: PathBuf, schema: Option<PyArrowType<Schema>>, schema_infer_max_records: usize, file_extension: &str, table_partition_cols: Vec<(String, PyArrowType<DataType>)>, file_compression_type: Option<String>, py: Python<'_>, ) -> PyDataFusionResult<()>
pub fn register_avro( &self, name: &str, path: PathBuf, schema: Option<PyArrowType<Schema>>, file_extension: &str, table_partition_cols: Vec<(String, PyArrowType<DataType>)>, py: Python<'_>, ) -> PyDataFusionResult<()>
pub fn register_dataset( &self, name: &str, dataset: &Bound<'_, PyAny>, py: Python<'_>, ) -> PyDataFusionResult<()>
pub fn register_udf(&self, udf: PyScalarUDF) -> PyResult<()>
pub fn register_udaf(&self, udaf: PyAggregateUDF) -> PyResult<()>
pub fn register_udwf(&self, udwf: PyWindowUDF) -> PyResult<()>
pub fn catalog(&self, name: &str) -> PyResult<PyObject>
pub fn catalog_names(&self) -> HashSet<String>
pub fn tables(&self) -> HashSet<String>
pub fn table(&self, name: &str, py: Python<'_>) -> PyResult<PyDataFrame>
pub fn table_exist(&self, name: &str) -> PyDataFusionResult<bool>
pub fn empty_table(&self) -> PyDataFusionResult<PyDataFrame>
pub fn session_id(&self) -> String
pub fn read_json( &self, path: PathBuf, schema: Option<PyArrowType<Schema>>, schema_infer_max_records: usize, file_extension: &str, table_partition_cols: Vec<(String, PyArrowType<DataType>)>, file_compression_type: Option<String>, py: Python<'_>, ) -> PyDataFusionResult<PyDataFrame>
pub fn read_csv( &self, path: &Bound<'_, PyAny>, schema: Option<PyArrowType<Schema>>, has_header: bool, delimiter: &str, schema_infer_max_records: usize, file_extension: &str, table_partition_cols: Vec<(String, PyArrowType<DataType>)>, file_compression_type: Option<String>, py: Python<'_>, ) -> PyDataFusionResult<PyDataFrame>
pub fn read_parquet( &self, path: &str, table_partition_cols: Vec<(String, PyArrowType<DataType>)>, parquet_pruning: bool, file_extension: &str, skip_metadata: bool, schema: Option<PyArrowType<Schema>>, file_sort_order: Option<Vec<Vec<PySortExpr>>>, py: Python<'_>, ) -> PyDataFusionResult<PyDataFrame>
pub fn read_avro( &self, path: &str, schema: Option<PyArrowType<Schema>>, table_partition_cols: Vec<(String, PyArrowType<DataType>)>, file_extension: &str, py: Python<'_>, ) -> PyDataFusionResult<PyDataFrame>
pub fn read_table( &self, table: Bound<'_, PyAny>, ) -> PyDataFusionResult<PyDataFrame>
Sourcepub fn execute(
&self,
plan: PyExecutionPlan,
part: usize,
py: Python<'_>,
) -> PyDataFusionResult<PyRecordBatchStream>
pub fn execute( &self, plan: PyExecutionPlan, part: usize, py: Python<'_>, ) -> PyDataFusionResult<PyRecordBatchStream>
Execute a partition of an execution plan and return a stream of record batches
Trait Implementations§
Source§impl Clone for PySessionContext
impl Clone for PySessionContext
Source§fn clone(&self) -> PySessionContext
fn clone(&self) -> PySessionContext
Returns a duplicate 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 From<PySessionContext> for SessionContext
impl From<PySessionContext> for SessionContext
Source§fn from(ctx: PySessionContext) -> SessionContext
fn from(ctx: PySessionContext) -> SessionContext
Converts to this type from the input type.
Source§impl From<SessionContext> for PySessionContext
impl From<SessionContext> for PySessionContext
Source§fn from(ctx: SessionContext) -> PySessionContext
fn from(ctx: SessionContext) -> PySessionContext
Converts to this type from the input type.
Source§impl<'py> IntoPyObject<'py> for PySessionContext
impl<'py> IntoPyObject<'py> for PySessionContext
Source§type Target = PySessionContext
type Target = PySessionContext
The Python output type
Source§type Output = Bound<'py, <PySessionContext as IntoPyObject<'py>>::Target>
type Output = Bound<'py, <PySessionContext 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 PyClass for PySessionContext
impl PyClass for PySessionContext
Source§impl PyClassBaseType for PySessionContext
impl PyClassBaseType for PySessionContext
type LayoutAsBase = PyClassObject<PySessionContext>
type BaseNativeType = <PySessionContext as PyClassImpl>::BaseNativeType
type Initializer = PyClassInitializer<PySessionContext>
type PyClassMutability = <PySessionContext as PyClassImpl>::PyClassMutability
Source§impl PyClassImpl for PySessionContext
impl PyClassImpl for PySessionContext
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§type ThreadChecker = SendablePyClass<PySessionContext>
type ThreadChecker = SendablePyClass<PySessionContext>
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<PySessionContext> for PyClassImplCollector<PySessionContext>
impl PyClassNewTextSignature<PySessionContext> for PyClassImplCollector<PySessionContext>
fn new_text_signature(self) -> Option<&'static str>
Source§impl<'a, 'py> PyFunctionArgument<'a, 'py, false> for &'a PySessionContext
impl<'a, 'py> PyFunctionArgument<'a, 'py, false> for &'a PySessionContext
Source§impl PyMethods<PySessionContext> for PyClassImplCollector<PySessionContext>
impl PyMethods<PySessionContext> for PyClassImplCollector<PySessionContext>
fn py_methods(self) -> &'static PyClassItems
Source§impl PyTypeInfo for PySessionContext
impl PyTypeInfo for PySessionContext
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 PySessionContext
Auto Trait Implementations§
impl Freeze for PySessionContext
impl !RefUnwindSafe for PySessionContext
impl Send for PySessionContext
impl Sync for PySessionContext
impl Unpin for PySessionContext
impl !UnwindSafe for PySessionContext
Blanket Implementations§
Source§impl<T> AlignerFor<1> for T
impl<T> AlignerFor<1> for T
Source§impl<T> AlignerFor<1024> for T
impl<T> AlignerFor<1024> for T
Source§type Aligner = AlignTo1024<T>
type Aligner = AlignTo1024<T>
The
AlignTo* type which aligns Self to ALIGNMENT.Source§impl<T> AlignerFor<128> for T
impl<T> AlignerFor<128> for T
Source§type Aligner = AlignTo128<T>
type Aligner = AlignTo128<T>
The
AlignTo* type which aligns Self to ALIGNMENT.Source§impl<T> AlignerFor<16> for T
impl<T> AlignerFor<16> for T
Source§impl<T> AlignerFor<16384> for T
impl<T> AlignerFor<16384> for T
Source§type Aligner = AlignTo16384<T>
type Aligner = AlignTo16384<T>
The
AlignTo* type which aligns Self to ALIGNMENT.Source§impl<T> AlignerFor<2> for T
impl<T> AlignerFor<2> for T
Source§impl<T> AlignerFor<2048> for T
impl<T> AlignerFor<2048> for T
Source§type Aligner = AlignTo2048<T>
type Aligner = AlignTo2048<T>
The
AlignTo* type which aligns Self to ALIGNMENT.Source§impl<T> AlignerFor<256> for T
impl<T> AlignerFor<256> for T
Source§type Aligner = AlignTo256<T>
type Aligner = AlignTo256<T>
The
AlignTo* type which aligns Self to ALIGNMENT.Source§impl<T> AlignerFor<32> for T
impl<T> AlignerFor<32> for T
Source§impl<T> AlignerFor<32768> for T
impl<T> AlignerFor<32768> for T
Source§type Aligner = AlignTo32768<T>
type Aligner = AlignTo32768<T>
The
AlignTo* type which aligns Self to ALIGNMENT.Source§impl<T> AlignerFor<4> for T
impl<T> AlignerFor<4> for T
Source§impl<T> AlignerFor<4096> for T
impl<T> AlignerFor<4096> for T
Source§type Aligner = AlignTo4096<T>
type Aligner = AlignTo4096<T>
The
AlignTo* type which aligns Self to ALIGNMENT.Source§impl<T> AlignerFor<512> for T
impl<T> AlignerFor<512> for T
Source§type Aligner = AlignTo512<T>
type Aligner = AlignTo512<T>
The
AlignTo* type which aligns Self to ALIGNMENT.Source§impl<T> AlignerFor<64> for T
impl<T> AlignerFor<64> for T
Source§impl<T> AlignerFor<8> for T
impl<T> AlignerFor<8> for T
Source§impl<T> AlignerFor<8192> for T
impl<T> AlignerFor<8192> for T
Source§type Aligner = AlignTo8192<T>
type Aligner = AlignTo8192<T>
The
AlignTo* type which aligns Self to ALIGNMENT.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§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, W> HasTypeWitness<W> for Twhere
W: MakeTypeWitness<Arg = T>,
T: ?Sized,
impl<T, W> HasTypeWitness<W> for Twhere
W: MakeTypeWitness<Arg = T>,
T: ?Sized,
Source§impl<T> Identity for Twhere
T: ?Sized,
impl<T> Identity for Twhere
T: ?Sized,
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 moreSource§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.Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> PyErrArguments for T
impl<T> PyErrArguments for T
Source§impl<T> PyTypeCheck for Twhere
T: PyTypeInfo,
impl<T> PyTypeCheck for Twhere
T: PyTypeInfo,
Source§impl<'a, T> RCowCompatibleRef<'a> for Twhere
T: Clone + 'a,
impl<'a, T> RCowCompatibleRef<'a> for Twhere
T: Clone + 'a,
Source§fn as_c_ref(from: &'a T) -> <T as RCowCompatibleRef<'a>>::RefC
fn as_c_ref(from: &'a T) -> <T as RCowCompatibleRef<'a>>::RefC
Converts a reference to an FFI-safe type
Source§fn as_rust_ref(from: <T as RCowCompatibleRef<'a>>::RefC) -> &'a T
fn as_rust_ref(from: <T as RCowCompatibleRef<'a>>::RefC) -> &'a T
Converts an FFI-safe type to a reference
Source§impl<S> ROExtAcc for S
impl<S> ROExtAcc for S
Source§fn f_get<F>(&self, offset: FieldOffset<S, F, Aligned>) -> &F
fn f_get<F>(&self, offset: FieldOffset<S, F, Aligned>) -> &F
Gets a reference to a field, determined by
offset. Read moreSource§fn f_get_mut<F>(&mut self, offset: FieldOffset<S, F, Aligned>) -> &mut F
fn f_get_mut<F>(&mut self, offset: FieldOffset<S, F, Aligned>) -> &mut F
Gets a muatble reference to a field, determined by
offset. Read moreSource§fn f_get_ptr<F, A>(&self, offset: FieldOffset<S, F, A>) -> *const F
fn f_get_ptr<F, A>(&self, offset: FieldOffset<S, F, A>) -> *const F
Gets a const pointer to a field,
the field is determined by
offset. Read moreSource§fn f_get_mut_ptr<F, A>(&mut self, offset: FieldOffset<S, F, A>) -> *mut F
fn f_get_mut_ptr<F, A>(&mut self, offset: FieldOffset<S, F, A>) -> *mut F
Gets a mutable pointer to a field, determined by
offset. Read moreSource§impl<S> ROExtOps<Aligned> for S
impl<S> ROExtOps<Aligned> for S
Source§fn f_replace<F>(&mut self, offset: FieldOffset<S, F, Aligned>, value: F) -> F
fn f_replace<F>(&mut self, offset: FieldOffset<S, F, Aligned>, value: F) -> F
Replaces a field (determined by
offset) with value,
returning the previous value of the field. Read moreSource§fn f_get_copy<F>(&self, offset: FieldOffset<S, F, Aligned>) -> Fwhere
F: Copy,
fn f_get_copy<F>(&self, offset: FieldOffset<S, F, Aligned>) -> Fwhere
F: Copy,
Source§impl<S> ROExtOps<Unaligned> for S
impl<S> ROExtOps<Unaligned> for S
Source§fn f_replace<F>(&mut self, offset: FieldOffset<S, F, Unaligned>, value: F) -> F
fn f_replace<F>(&mut self, offset: FieldOffset<S, F, Unaligned>, value: F) -> F
Replaces a field (determined by
offset) with value,
returning the previous value of the field. Read moreSource§fn f_get_copy<F>(&self, offset: FieldOffset<S, F, Unaligned>) -> Fwhere
F: Copy,
fn f_get_copy<F>(&self, offset: FieldOffset<S, F, Unaligned>) -> Fwhere
F: Copy,
Source§impl<T> SelfOps for Twhere
T: ?Sized,
impl<T> SelfOps for Twhere
T: ?Sized,
Source§fn piped<F, U>(self, f: F) -> U
fn piped<F, U>(self, f: F) -> U
Emulates the pipeline operator, allowing method syntax in more places. Read more
Source§fn piped_ref<'a, F, U>(&'a self, f: F) -> Uwhere
F: FnOnce(&'a Self) -> U,
fn piped_ref<'a, F, U>(&'a self, f: F) -> Uwhere
F: FnOnce(&'a Self) -> U,
The same as
piped except that the function takes &Self
Useful for functions that take &Self instead of Self. Read moreSource§fn piped_mut<'a, F, U>(&'a mut self, f: F) -> Uwhere
F: FnOnce(&'a mut Self) -> U,
fn piped_mut<'a, F, U>(&'a mut self, f: F) -> Uwhere
F: FnOnce(&'a mut Self) -> U,
The same as
piped, except that the function takes &mut Self.
Useful for functions that take &mut Self instead of Self.Source§fn mutated<F>(self, f: F) -> Self
fn mutated<F>(self, f: F) -> Self
Mutates self using a closure taking self by mutable reference,
passing it along the method chain. Read more
Source§fn observe<F>(self, f: F) -> Self
fn observe<F>(self, f: F) -> Self
Observes the value of self, passing it along unmodified.
Useful in long method chains. Read more
Source§fn as_ref_<T>(&self) -> &T
fn as_ref_<T>(&self) -> &T
Performs a reference to reference conversion with
AsRef,
using the turbofish .as_ref_::<_>() syntax. Read moreSource§impl<This> TransmuteElement for Thiswhere
This: ?Sized,
impl<This> TransmuteElement for Thiswhere
This: ?Sized,
Source§unsafe fn transmute_element<T>(self) -> Self::TransmutedPtrwhere
Self: CanTransmuteElement<T>,
unsafe fn transmute_element<T>(self) -> Self::TransmutedPtrwhere
Self: CanTransmuteElement<T>,
Transmutes the element type of this pointer.. Read more
Source§impl<T> TypeIdentity for Twhere
T: ?Sized,
impl<T> TypeIdentity for Twhere
T: ?Sized,
Source§fn as_type_mut(&mut self) -> &mut Self::Type
fn as_type_mut(&mut self) -> &mut Self::Type
Converts a mutable reference back to the original type.
Source§fn into_type_box(self: Box<Self>) -> Box<Self::Type>
fn into_type_box(self: Box<Self>) -> Box<Self::Type>
Converts a box back to the original type.
Source§fn into_type_arc(this: Arc<Self>) -> Arc<Self::Type>
fn into_type_arc(this: Arc<Self>) -> Arc<Self::Type>
Converts an Arc back to the original type. Read more
Source§fn into_type_rc(this: Rc<Self>) -> Rc<Self::Type>
fn into_type_rc(this: Rc<Self>) -> Rc<Self::Type>
Converts an Rc back to the original type. Read more
Source§fn from_type_ref(this: &Self::Type) -> &Self
fn from_type_ref(this: &Self::Type) -> &Self
Converts a reference back to the original type.
Source§fn from_type_mut(this: &mut Self::Type) -> &mut Self
fn from_type_mut(this: &mut Self::Type) -> &mut Self
Converts a mutable reference back to the original type.
Source§fn from_type_box(this: Box<Self::Type>) -> Box<Self>
fn from_type_box(this: Box<Self::Type>) -> Box<Self>
Converts a box back to the original type.