risingwave_stream::executor::prelude

Struct StreamChunk

source
pub struct StreamChunk {
    ops: Arc<[Op]>,
    data: DataChunk,
}
Expand description

StreamChunk is used to pass data over the streaming pathway.

Fields§

§ops: Arc<[Op]>§data: DataChunk

Implementations§

source§

impl StreamChunk

source

pub fn new( ops: impl Into<Arc<[Op]>>, columns: Vec<Arc<ArrayImpl>>, ) -> StreamChunk

Create a new StreamChunk with given ops and columns.

source

pub fn with_visibility( ops: impl Into<Arc<[Op]>>, columns: Vec<Arc<ArrayImpl>>, visibility: Bitmap, ) -> StreamChunk

Create a new StreamChunk with given ops, columns and visibility.

source

pub fn from_rows( rows: &[(Op, impl Row)], data_types: &[DataType], ) -> StreamChunk

Build a StreamChunk from rows.

Panics if the rows is empty.

Should prefer using StreamChunkBuilder instead to avoid unnecessary allocation of rows.

source

pub fn data_chunk(&self) -> &DataChunk

Get the reference of the underlying data chunk.

source

pub fn compact(self) -> StreamChunk

compact the StreamChunk with its visibility map

source

pub fn split(&self, size: usize) -> Vec<StreamChunk>

Split the StreamChunk into multiple chunks with the given size at most.

When the total cardinality of all the chunks is not evenly divided by the size, the last new chunk will be the remainder.

For consecutive UpdateDelete and UpdateInsert, they will be kept in one chunk. As a result, some chunks may have size + 1 rows.

source

pub fn into_parts(self) -> (DataChunk, Arc<[Op]>)

source

pub fn from_parts( ops: impl Into<Arc<[Op]>>, data_chunk: DataChunk, ) -> StreamChunk

source

pub fn into_inner(self) -> (Arc<[Op]>, Vec<Arc<ArrayImpl>>, Bitmap)

source

pub fn to_protobuf(&self) -> StreamChunk

source

pub fn from_protobuf(prost: &StreamChunk) -> Result<StreamChunk, ArrayError>

source

pub fn ops(&self) -> &[Op]

source

pub fn to_pretty(&self) -> impl Display

Returns a table-like text representation of the StreamChunk.

source

pub fn to_pretty_with_schema(&self, schema: &Schema) -> impl Display

Returns a table-like text representation of the StreamChunk with a header of column names from the given schema.

source

pub fn project(&self, indices: &[usize]) -> StreamChunk

Reorder (and possibly remove) columns.

e.g. if indices is [2, 1, 0], and the chunk contains column [a, b, c], then the output will be [c, b, a]. If indices is [2, 0], then the output will be [c, a]. If the input mapping is identity mapping, no reorder will be performed.

source

pub fn eliminate_adjacent_noop_update(self) -> StreamChunk

Remove the adjacent delete-insert if their row value are the same.

source

pub fn project_with_vis(&self, indices: &[usize], vis: Bitmap) -> StreamChunk

Reorder columns and set visibility.

source

pub fn clone_with_vis(&self, vis: Bitmap) -> StreamChunk

Clone the StreamChunk with a new visibility.

source§

impl StreamChunk

source

pub fn records(&self) -> StreamChunkRefIter<'_>

Return an iterator on stream records of this stream chunk.

source

pub fn rows(&self) -> impl Iterator<Item = (Op, RowRef<'_>)>

Return an iterator on rows of this stream chunk.

Should consider using StreamChunk::records if possible.

source

pub fn rows_in( &self, range: Range<usize>, ) -> impl Iterator<Item = (Op, RowRef<'_>)>

Return an iterator on rows of this stream chunk in a range.

source

pub fn row_at(&self, pos: usize) -> (Op, RowRef<'_>, bool)

Random access a row at pos. Return the op, data and whether the row is visible.

source

pub fn rows_with_holes(&self) -> impl Iterator<Item = Option<(Op, RowRef<'_>)>>

Methods from Deref<Target = DataChunk>§

source

pub fn next_visible_row_idx(&self, row_idx: usize) -> Option<usize>

Return the next visible row index on or after row_idx.

source

pub fn dimension(&self) -> usize

source

pub fn cardinality(&self) -> usize

cardinality returns the number of visible tuples

source

pub fn capacity(&self) -> usize

capacity returns physical length of any chunk column

source

pub fn selectivity(&self) -> f64

source

pub fn with_visibility(&self, visibility: impl Into<Bitmap>) -> DataChunk

source

pub fn visibility(&self) -> &Bitmap

source

pub fn set_visibility(&mut self, visibility: Bitmap)

source

pub fn is_compacted(&self) -> bool

source

pub fn column_at(&self, idx: usize) -> &Arc<ArrayImpl>

source

pub fn columns(&self) -> &[Arc<ArrayImpl>]

source

pub fn data_types(&self) -> Vec<DataType>

Returns the data types of all columns.

source

pub fn split_column_at(&self, idx: usize) -> (DataChunk, DataChunk)

Divides one chunk into two at an column index.

§Panics

Panics if idx > columns.len().

source

pub fn to_protobuf(&self) -> DataChunk

source

pub fn compact_cow(&self) -> Cow<'_, DataChunk>

Convert the chunk to compact format.

If the chunk is not compacted, return a new compacted chunk, otherwise return a reference to self.

source

pub fn get_hash_values<H>( &self, column_idxes: &[usize], hasher_builder: H, ) -> Vec<HashCode<H>>
where H: BuildHasher,

Compute hash values for each row. The number of the returning HashCodes is self.capacity(). When skip_invisible_row is true, the HashCode for the invisible rows is arbitrary.

source

pub fn row_at(&self, pos: usize) -> (RowRef<'_>, bool)

Random access a tuple in a data chunk. Return in a row format.

§Arguments
  • pos - Index of look up tuple
  • RowRef - Reference of data tuple
  • bool - whether this tuple is visible
source

pub fn row_at_unchecked_vis(&self, pos: usize) -> RowRef<'_>

Random access a tuple in a data chunk. Return in a row format. Note that this function do not return whether the row is visible.

§Arguments
  • pos - Index of look up tuple
source

pub fn to_pretty(&self) -> impl Display

Returns a table-like text representation of the DataChunk.

source

pub fn keep_columns(&self, column_indices: &[usize]) -> DataChunk

Keep the specified columns and set the rest elements to null.

§Example
i i i                            i i i
1 2 3  --> keep_columns([1]) --> . 2 .
4 5 6                            . 5 .
source

pub fn project(&self, indices: &[usize]) -> DataChunk

Reorder (and possibly remove) columns.

e.g. if indices is [2, 1, 0], and the chunk contains column [a, b, c], then the output will be [c, b, a]. If indices is [2, 0], then the output will be [c, a]. If the input mapping is identity mapping, no reorder will be performed.

source

pub fn project_with_vis( &self, indices: &[usize], visibility: Bitmap, ) -> DataChunk

Reorder columns and set visibility.

source

pub fn reorder_rows(&self, indexes: &[usize]) -> DataChunk

Reorder rows by indexes.

source

pub fn serialize(&self) -> Vec<Bytes>

Serialize each row into value encoding bytes.

The returned vector’s size is self.capacity() and for the invisible row will give a empty bytes.

source

pub fn serialize_with(&self, serializer: &impl ValueRowSerializer) -> Vec<Bytes>

Serialize each row into bytes with given serializer.

This is similar to serialize but it uses a custom serializer. Prefer serialize if possible since it might be more efficient due to columnar operations.

source

pub fn estimate_value_encoding_size(&self, column_indices: &[usize]) -> usize

Estimate size of hash keys. Their indices in a row are indicated by column_indices. Size here refers to the number of u8s required to store the serialized datum.

source

pub fn rows(&self) -> DataChunkRefIter<'_>

Get an iterator for visible rows.

source

pub fn rows_in(&self, range: Range<usize>) -> DataChunkRefIter<'_>

Get an iterator for visible rows in range.

source

pub fn rows_with_holes(&self) -> DataChunkRefIterWithHoles<'_>

Get an iterator for all rows in the chunk, and a None represents an invisible row.

Trait Implementations§

source§

impl Clone for StreamChunk

source§

fn clone(&self) -> StreamChunk

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for StreamChunk

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
source§

impl Default for StreamChunk

source§

fn default() -> StreamChunk

Create a 0-row-0-col StreamChunk. Only used in some existing tests. This is NOT the same as an empty chunk, which has 0 rows but with columns aligned with executor schema.

source§

impl Deref for StreamChunk

source§

type Target = DataChunk

The resulting type after dereferencing.
source§

fn deref(&self) -> &<StreamChunk as Deref>::Target

Dereferences the value.
source§

impl DerefMut for StreamChunk

source§

fn deref_mut(&mut self) -> &mut <StreamChunk as Deref>::Target

Mutably dereferences the value.
source§

impl EstimateSize for StreamChunk

source§

fn estimated_heap_size(&self) -> usize

The estimated heap size of the current struct in bytes.
source§

fn estimated_size(&self) -> usize
where Self: Sized,

The estimated total size of the current struct in bytes, including the estimated_heap_size and the size of Self.
source§

impl From<DataChunk> for StreamChunk

StreamChunk can be created from DataChunk with all operations set to Insert.

source§

fn from(data: DataChunk) -> StreamChunk

Converts to this type from the input type.
source§

impl From<StreamChunk> for Message

source§

fn from(chunk: StreamChunk) -> Self

Converts to this type from the input type.
source§

impl From<StreamChunkMut> for StreamChunk

source§

fn from(c: StreamChunkMut) -> StreamChunk

Converts to this type from the input type.
source§

impl PartialEq for StreamChunk

source§

fn eq(&self, other: &StreamChunk) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl StreamChunkTestExt for StreamChunk

source§

fn from_pretty(s: &str) -> StreamChunk

Parse a chunk from string. Read more
source§

fn valid(&self) -> bool

Validate the StreamChunk layout.
source§

fn concat(chunks: Vec<StreamChunk>) -> StreamChunk

Concatenate multiple StreamChunk into one. Read more
source§

fn sort_rows(self) -> StreamChunk

Sort rows.
source§

fn gen_stream_chunks( num_of_chunks: usize, chunk_size: usize, data_types: &[DataType], varchar_properties: &VarcharProperty, ) -> Vec<StreamChunk>

Generate num_of_chunks data chunks with type data_types, where each data chunk has cardinality of chunk_size. TODO(kwannoel): Generate different types of op, different vis.
source§

fn gen_stream_chunks_inner( num_of_chunks: usize, chunk_size: usize, data_types: &[DataType], varchar_properties: &VarcharProperty, visibility_percent: f64, inserts_percent: f64, ) -> Vec<StreamChunk>

source§

impl StructuralPartialEq for StreamChunk

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where T: Clone,

source§

unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
§

impl<T> Conv for T

§

fn conv<T>(self) -> T
where Self: Into<T>,

Converts self into T using Into<T>. Read more
§

impl<Choices> CoproductSubsetter<CNil, HNil> for Choices

§

type Remainder = Choices

§

fn subset( self, ) -> Result<CNil, <Choices as CoproductSubsetter<CNil, HNil>>::Remainder>

Extract a subset of the possible types in a coproduct (or get the remaining possibilities) Read more
§

impl<T> Downcast for T
where T: Any,

§

fn into_any(self: Box<T>) -> Box<dyn Any>

Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.
§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be further downcast into Rc<ConcreteType> where ConcreteType implements Trait.
§

fn as_any(&self) -> &(dyn Any + 'static)

Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &Any’s vtable from &Trait’s.
§

fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)

Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s.
§

impl<T> DowncastSync for T
where T: Any + Send + Sync,

§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Sync + Send>

Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be further downcast into Arc<ConcreteType> where ConcreteType implements Trait.
source§

impl<T> DynClone for T
where T: Clone,

§

impl<T> FmtForward for T

§

fn fmt_binary(self) -> FmtBinary<Self>
where Self: Binary,

Causes self to use its Binary implementation when Debug-formatted.
§

fn fmt_display(self) -> FmtDisplay<Self>
where Self: Display,

Causes self to use its Display implementation when Debug-formatted.
§

fn fmt_lower_exp(self) -> FmtLowerExp<Self>
where Self: LowerExp,

Causes self to use its LowerExp implementation when Debug-formatted.
§

fn fmt_lower_hex(self) -> FmtLowerHex<Self>
where Self: LowerHex,

Causes self to use its LowerHex implementation when Debug-formatted.
§

fn fmt_octal(self) -> FmtOctal<Self>
where Self: Octal,

Causes self to use its Octal implementation when Debug-formatted.
§

fn fmt_pointer(self) -> FmtPointer<Self>
where Self: Pointer,

Causes self to use its Pointer implementation when Debug-formatted.
§

fn fmt_upper_exp(self) -> FmtUpperExp<Self>
where Self: UpperExp,

Causes self to use its UpperExp implementation when Debug-formatted.
§

fn fmt_upper_hex(self) -> FmtUpperHex<Self>
where Self: UpperHex,

Causes self to use its UpperHex implementation when Debug-formatted.
§

fn fmt_list(self) -> FmtList<Self>
where &'a Self: for<'a> IntoIterator,

Formats each item in a sequence. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> FromRef<T> for T
where T: Clone,

§

fn from_ref(input: &T) -> T

Converts to this type from a reference to the input type.
§

impl<T> FutureExt for T

§

fn with_context(self, otel_cx: Context) -> WithContext<Self>

Attaches the provided Context to this type, returning a WithContext wrapper. Read more
§

fn with_current_context(self) -> WithContext<Self>

Attaches the current Context to this type, returning a WithContext wrapper. Read more
§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> IntoEither for T

source§

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 more
source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

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
source§

impl<T> IntoRequest<T> for T

source§

fn into_request(self) -> Request<T>

Wrap the input message T in a tonic::Request
§

impl<T> IntoResult<T> for T

§

type Err = Infallible

§

fn into_result(self) -> Result<T, <T as IntoResult<T>>::Err>

§

impl<Unshared, Shared> IntoShared<Shared> for Unshared
where Shared: FromUnshared<Unshared>,

§

fn into_shared(self) -> Shared

Creates a shared type from an unshared type.
§

impl<T, U, I> LiftInto<U, I> for T
where U: LiftFrom<T, I>,

§

fn lift_into(self) -> U

Performs the indexed conversion.
source§

impl<M> MetricVecRelabelExt for M

source§

fn relabel( self, metric_level: MetricLevel, relabel_threshold: MetricLevel, ) -> RelabeledMetricVec<M>

source§

fn relabel_n( self, metric_level: MetricLevel, relabel_threshold: MetricLevel, relabel_num: usize, ) -> RelabeledMetricVec<M>

source§

fn relabel_debug_1( self, relabel_threshold: MetricLevel, ) -> RelabeledMetricVec<M>

Equivalent to RelabeledMetricVec::with_metric_level_relabel_n with metric_level set to MetricLevel::Debug and relabel_num set to 1.
§

impl<T> Pipe for T
where T: ?Sized,

§

fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> R
where Self: Sized,

Pipes by value. This is generally the method you want to use. Read more
§

fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> R
where R: 'a,

Borrows self and passes that borrow into the pipe function. Read more
§

fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> R
where R: 'a,

Mutably borrows self and passes that borrow into the pipe function. Read more
§

fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
where Self: Borrow<B>, B: 'a + ?Sized, R: 'a,

Borrows self, then passes self.borrow() into the pipe function. Read more
§

fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
where Self: BorrowMut<B>, B: 'a + ?Sized, R: 'a,

Mutably borrows self, then passes self.borrow_mut() into the pipe function. Read more
§

fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
where Self: AsRef<U>, U: 'a + ?Sized, R: 'a,

Borrows self, then passes self.as_ref() into the pipe function.
§

fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
where Self: AsMut<U>, U: 'a + ?Sized, R: 'a,

Mutably borrows self, then passes self.as_mut() into the pipe function.
§

fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
where Self: Deref<Target = T>, T: 'a + ?Sized, R: 'a,

Borrows self, then passes self.deref() into the pipe function.
§

fn pipe_deref_mut<'a, T, R>( &'a mut self, func: impl FnOnce(&'a mut T) -> R, ) -> R
where Self: DerefMut<Target = T> + Deref, T: 'a + ?Sized, R: 'a,

Mutably borrows self, then passes self.deref_mut() into the pipe function.
§

impl<T> Pointable for T

§

const ALIGN: usize = _

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
source§

impl<T> Same for T

source§

type Output = T

Should always be Self
§

impl<Source> Sculptor<HNil, HNil> for Source

§

type Remainder = Source

§

fn sculpt(self) -> (HNil, <Source as Sculptor<HNil, HNil>>::Remainder)

Consumes the current HList and returns an HList with the requested shape. Read more
source§

impl<T> SerTo<T> for T

§

impl<T> Tap for T

§

fn tap(self, func: impl FnOnce(&Self)) -> Self

Immutable access to a value. Read more
§

fn tap_mut(self, func: impl FnOnce(&mut Self)) -> Self

Mutable access to a value. Read more
§

fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
where Self: Borrow<B>, B: ?Sized,

Immutable access to the Borrow<B> of a value. Read more
§

fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
where Self: BorrowMut<B>, B: ?Sized,

Mutable access to the BorrowMut<B> of a value. Read more
§

fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
where Self: AsRef<R>, R: ?Sized,

Immutable access to the AsRef<R> view of a value. Read more
§

fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
where Self: AsMut<R>, R: ?Sized,

Mutable access to the AsMut<R> view of a value. Read more
§

fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
where Self: Deref<Target = T>, T: ?Sized,

Immutable access to the Deref::Target of a value. Read more
§

fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
where Self: DerefMut<Target = T> + Deref, T: ?Sized,

Mutable access to the Deref::Target of a value. Read more
§

fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self

Calls .tap() only in debug builds, and is erased in release builds.
§

fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self

Calls .tap_mut() only in debug builds, and is erased in release builds.
§

fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
where Self: Borrow<B>, B: ?Sized,

Calls .tap_borrow() only in debug builds, and is erased in release builds.
§

fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
where Self: BorrowMut<B>, B: ?Sized,

Calls .tap_borrow_mut() only in debug builds, and is erased in release builds.
§

fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
where Self: AsRef<R>, R: ?Sized,

Calls .tap_ref() only in debug builds, and is erased in release builds.
§

fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
where Self: AsMut<R>, R: ?Sized,

Calls .tap_ref_mut() only in debug builds, and is erased in release builds.
§

fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
where Self: Deref<Target = T>, T: ?Sized,

Calls .tap_deref() only in debug builds, and is erased in release builds.
§

fn tap_deref_mut_dbg<T>(self, func: impl FnOnce(&mut T)) -> Self
where Self: DerefMut<Target = T> + Deref, T: ?Sized,

Calls .tap_deref_mut() only in debug builds, and is erased in release builds.
source§

impl<T> ToOwned for T
where T: Clone,

source§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
§

impl<T> TryConv for T

§

fn try_conv<T>(self) -> Result<T, Self::Error>
where Self: TryInto<T>,

Attempts to convert self into T using TryInto<T>. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

source§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more
source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
§

impl<T> Allocation for T
where T: RefUnwindSafe + Send + Sync,

§

impl<T> Allocation for T
where T: RefUnwindSafe + Send + Sync,

§

impl<T> Allocation for T
where T: RefUnwindSafe + Send + Sync,

§

impl<T> DevConfig for T
where T: Send + Sync + 'static + Debug,

source§

impl<T> LruValue for T
where T: Send + Sync,

§

impl<T> MaybeSend for T
where T: Send,

§

impl<T> MaybeSend for T
where T: Send,

§

impl<T> Value for T
where T: Send + Sync + 'static,