Aligned

Struct Aligned 

Source
pub struct Aligned<T, Alignment: IsAlignment> {
    pub value: T,
    /* private fields */
}
Expand description

Force minimum alignment of a type.

§Invariants

The wrapped Self::value is guaranteed, for specifically unsafe code, to have a minimum alignment of Alignment::VALUE bytes. The wrapped value is also guaranteed to have a zero offset from the start of the alignment block. This makes it sound to construct a reference the wrapped value for a different type with an alignment of maximum Alignment::VALUE bytes, given the other unsafe rules are followed.

Additionally the layout of this struct is #[repr(C)] with a single field value of type T and a private zero sized type with an alignment of Alignment::VALUE bytes.

§Examples

use std::mem::*;
use dungeon_cell::align::Aligned;
use dungeon_cell::layout::Alignment;

// 1 byte aligned buffer
let x: [u8; 4] = 1234567890u32.to_ne_bytes();
assert_eq!(size_of_val(&x), 4);
assert_eq!(align_of_val(&x), 1);

// 4 byte aligned buffer
let y = Aligned::<_, Alignment<4>>::new(x);
assert_eq!(size_of_val(&y), 4);
assert_eq!(align_of_val(&y), 4);

// this cast back to a u32 is sound because Aligned
// makes the value field aligned to 4 bytes
let z = &y.value as *const [u8; 4] as *const u32;
let z = unsafe { &*z };
assert_eq!(z, &1234567890);

Fields§

§value: T

Stored value.

This field is guaranteed to be aligned to Alignment::VALUE bytes.

Implementations§

Source§

impl<T, Alignment: IsAlignment> Aligned<T, Alignment>

Source

pub const fn new(value: T) -> Self

Construct a new aligned value.

§Examples
use dungeon_cell::align::Aligned;
use dungeon_cell::layout::Alignment;

let a = Aligned::<_, Alignment<16>>::new(4);

assert_eq!(a.value, 4);
Source

pub const fn into_inner(this: Self) -> T

Convert to the inner T.

The returned value does not keep it’s alignment and has the alignment of type T.

§Examples
use dungeon_cell::align::Aligned;
use dungeon_cell::layout::Alignment;

let aligned = Aligned::<_, Alignment<16>>::new(4);
let num = Aligned::into_inner(aligned);

assert_eq!(num, 4);

Trait Implementations§

Source§

impl<T: Clone, Alignment: IsAlignment> Clone for Aligned<T, Alignment>

Source§

fn clone(&self) -> Self

Returns a duplicate 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<T, Alignment: IsAlignment> Deref for Aligned<T, Alignment>

Source§

type Target = T

The resulting type after dereferencing.
Source§

fn deref(&self) -> &Self::Target

Dereferences the value.
Source§

impl<T, Alignment: IsAlignment> DerefMut for Aligned<T, Alignment>

Source§

fn deref_mut(&mut self) -> &mut Self::Target

Mutably dereferences the value.
Source§

impl<T: Copy, Alignment: IsAlignment> Copy for Aligned<T, Alignment>

Auto Trait Implementations§

§

impl<T, Alignment> Freeze for Aligned<T, Alignment>
where T: Freeze, <Alignment as IsAlignment>::Marker: Freeze,

§

impl<T, Alignment> RefUnwindSafe for Aligned<T, Alignment>
where T: RefUnwindSafe,

§

impl<T, Alignment> Send for Aligned<T, Alignment>
where T: Send,

§

impl<T, Alignment> Sync for Aligned<T, Alignment>
where T: Sync,

§

impl<T, Alignment> Unpin for Aligned<T, Alignment>
where T: Unpin,

§

impl<T, Alignment> UnwindSafe for Aligned<T, Alignment>
where T: UnwindSafe,

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, dest: *mut u8)

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

impl<T> Dynamic<Bound<Send, Sync, Copy, Clone, Unpin, __>> for T
where T: Send + Sync + Copy + Clone + Unpin,

Source§

unsafe fn clone_unchecked(this: &T) -> T

Unsafe form of Self::clone(). Read more
Source§

unsafe fn debug_unchecked( _this: &T, _f: &mut Formatter<'_>, ) -> Result<(), Error>

Unsafe form of Self::debug(). Read more
Source§

fn clone(this: &Self) -> Self
where Self: Sized, <B as IsBound>::CloneMarker: Clone,

Call the Clone::clone() implementation of Self. Read more
Source§

fn debug(this: &Self, f: &mut Formatter<'_>) -> Result<(), Error>
where Self: Sized, <B as IsBound>::DebugMarker: Debug,

Call the Debug::fmt() implementation of Self. Read more
Source§

impl<T> Dynamic<Bound<Send, Sync, Copy, Clone, __, __>> for T
where T: Send + Sync + Copy + Clone,

Source§

unsafe fn clone_unchecked(this: &T) -> T

Unsafe form of Self::clone(). Read more
Source§

unsafe fn debug_unchecked( _this: &T, _f: &mut Formatter<'_>, ) -> Result<(), Error>

Unsafe form of Self::debug(). Read more
Source§

fn clone(this: &Self) -> Self
where Self: Sized, <B as IsBound>::CloneMarker: Clone,

Call the Clone::clone() implementation of Self. Read more
Source§

fn debug(this: &Self, f: &mut Formatter<'_>) -> Result<(), Error>
where Self: Sized, <B as IsBound>::DebugMarker: Debug,

Call the Debug::fmt() implementation of Self. Read more
Source§

impl<T> Dynamic<Bound<Send, Sync, Copy, __, Unpin, __>> for T
where T: Send + Sync + Copy + Unpin,

Source§

unsafe fn clone_unchecked(_this: &T) -> T

Unsafe form of Self::clone(). Read more
Source§

unsafe fn debug_unchecked( _this: &T, _f: &mut Formatter<'_>, ) -> Result<(), Error>

Unsafe form of Self::debug(). Read more
Source§

fn clone(this: &Self) -> Self
where Self: Sized, <B as IsBound>::CloneMarker: Clone,

Call the Clone::clone() implementation of Self. Read more
Source§

fn debug(this: &Self, f: &mut Formatter<'_>) -> Result<(), Error>
where Self: Sized, <B as IsBound>::DebugMarker: Debug,

Call the Debug::fmt() implementation of Self. Read more
Source§

impl<T> Dynamic<Bound<Send, Sync, Copy, __, __, __>> for T
where T: Send + Sync + Copy,

Source§

unsafe fn clone_unchecked(_this: &T) -> T

Unsafe form of Self::clone(). Read more
Source§

unsafe fn debug_unchecked( _this: &T, _f: &mut Formatter<'_>, ) -> Result<(), Error>

Unsafe form of Self::debug(). Read more
Source§

fn clone(this: &Self) -> Self
where Self: Sized, <B as IsBound>::CloneMarker: Clone,

Call the Clone::clone() implementation of Self. Read more
Source§

fn debug(this: &Self, f: &mut Formatter<'_>) -> Result<(), Error>
where Self: Sized, <B as IsBound>::DebugMarker: Debug,

Call the Debug::fmt() implementation of Self. Read more
Source§

impl<T> Dynamic<Bound<Send, Sync, __, Clone, Unpin, __>> for T
where T: Send + Sync + Clone + Unpin,

Source§

unsafe fn clone_unchecked(this: &T) -> T

Unsafe form of Self::clone(). Read more
Source§

unsafe fn debug_unchecked( _this: &T, _f: &mut Formatter<'_>, ) -> Result<(), Error>

Unsafe form of Self::debug(). Read more
Source§

fn clone(this: &Self) -> Self
where Self: Sized, <B as IsBound>::CloneMarker: Clone,

Call the Clone::clone() implementation of Self. Read more
Source§

fn debug(this: &Self, f: &mut Formatter<'_>) -> Result<(), Error>
where Self: Sized, <B as IsBound>::DebugMarker: Debug,

Call the Debug::fmt() implementation of Self. Read more
Source§

impl<T> Dynamic<Bound<Send, Sync, __, Clone, __, __>> for T
where T: Send + Sync + Clone,

Source§

unsafe fn clone_unchecked(this: &T) -> T

Unsafe form of Self::clone(). Read more
Source§

unsafe fn debug_unchecked( _this: &T, _f: &mut Formatter<'_>, ) -> Result<(), Error>

Unsafe form of Self::debug(). Read more
Source§

fn clone(this: &Self) -> Self
where Self: Sized, <B as IsBound>::CloneMarker: Clone,

Call the Clone::clone() implementation of Self. Read more
Source§

fn debug(this: &Self, f: &mut Formatter<'_>) -> Result<(), Error>
where Self: Sized, <B as IsBound>::DebugMarker: Debug,

Call the Debug::fmt() implementation of Self. Read more
Source§

impl<T> Dynamic<Bound<Send, Sync, __, __, Unpin, __>> for T
where T: Send + Sync + Unpin,

Source§

unsafe fn clone_unchecked(_this: &T) -> T

Unsafe form of Self::clone(). Read more
Source§

unsafe fn debug_unchecked( _this: &T, _f: &mut Formatter<'_>, ) -> Result<(), Error>

Unsafe form of Self::debug(). Read more
Source§

fn clone(this: &Self) -> Self
where Self: Sized, <B as IsBound>::CloneMarker: Clone,

Call the Clone::clone() implementation of Self. Read more
Source§

fn debug(this: &Self, f: &mut Formatter<'_>) -> Result<(), Error>
where Self: Sized, <B as IsBound>::DebugMarker: Debug,

Call the Debug::fmt() implementation of Self. Read more
Source§

impl<T> Dynamic<Bound<Send, Sync, __, __, __, __>> for T
where T: Send + Sync,

Source§

unsafe fn clone_unchecked(_this: &T) -> T

Unsafe form of Self::clone(). Read more
Source§

unsafe fn debug_unchecked( _this: &T, _f: &mut Formatter<'_>, ) -> Result<(), Error>

Unsafe form of Self::debug(). Read more
Source§

fn clone(this: &Self) -> Self
where Self: Sized, <B as IsBound>::CloneMarker: Clone,

Call the Clone::clone() implementation of Self. Read more
Source§

fn debug(this: &Self, f: &mut Formatter<'_>) -> Result<(), Error>
where Self: Sized, <B as IsBound>::DebugMarker: Debug,

Call the Debug::fmt() implementation of Self. Read more
Source§

impl<T> Dynamic<Bound<Send, __, Copy, Clone, Unpin, __>> for T
where T: Send + Copy + Clone + Unpin,

Source§

unsafe fn clone_unchecked(this: &T) -> T

Unsafe form of Self::clone(). Read more
Source§

unsafe fn debug_unchecked( _this: &T, _f: &mut Formatter<'_>, ) -> Result<(), Error>

Unsafe form of Self::debug(). Read more
Source§

fn clone(this: &Self) -> Self
where Self: Sized, <B as IsBound>::CloneMarker: Clone,

Call the Clone::clone() implementation of Self. Read more
Source§

fn debug(this: &Self, f: &mut Formatter<'_>) -> Result<(), Error>
where Self: Sized, <B as IsBound>::DebugMarker: Debug,

Call the Debug::fmt() implementation of Self. Read more
Source§

impl<T> Dynamic<Bound<Send, __, Copy, Clone, __, __>> for T
where T: Send + Copy + Clone,

Source§

unsafe fn clone_unchecked(this: &T) -> T

Unsafe form of Self::clone(). Read more
Source§

unsafe fn debug_unchecked( _this: &T, _f: &mut Formatter<'_>, ) -> Result<(), Error>

Unsafe form of Self::debug(). Read more
Source§

fn clone(this: &Self) -> Self
where Self: Sized, <B as IsBound>::CloneMarker: Clone,

Call the Clone::clone() implementation of Self. Read more
Source§

fn debug(this: &Self, f: &mut Formatter<'_>) -> Result<(), Error>
where Self: Sized, <B as IsBound>::DebugMarker: Debug,

Call the Debug::fmt() implementation of Self. Read more
Source§

impl<T> Dynamic<Bound<Send, __, Copy, __, Unpin, __>> for T
where T: Send + Copy + Unpin,

Source§

unsafe fn clone_unchecked(_this: &T) -> T

Unsafe form of Self::clone(). Read more
Source§

unsafe fn debug_unchecked( _this: &T, _f: &mut Formatter<'_>, ) -> Result<(), Error>

Unsafe form of Self::debug(). Read more
Source§

fn clone(this: &Self) -> Self
where Self: Sized, <B as IsBound>::CloneMarker: Clone,

Call the Clone::clone() implementation of Self. Read more
Source§

fn debug(this: &Self, f: &mut Formatter<'_>) -> Result<(), Error>
where Self: Sized, <B as IsBound>::DebugMarker: Debug,

Call the Debug::fmt() implementation of Self. Read more
Source§

impl<T> Dynamic<Bound<Send, __, Copy, __, __, __>> for T
where T: Send + Copy,

Source§

unsafe fn clone_unchecked(_this: &T) -> T

Unsafe form of Self::clone(). Read more
Source§

unsafe fn debug_unchecked( _this: &T, _f: &mut Formatter<'_>, ) -> Result<(), Error>

Unsafe form of Self::debug(). Read more
Source§

fn clone(this: &Self) -> Self
where Self: Sized, <B as IsBound>::CloneMarker: Clone,

Call the Clone::clone() implementation of Self. Read more
Source§

fn debug(this: &Self, f: &mut Formatter<'_>) -> Result<(), Error>
where Self: Sized, <B as IsBound>::DebugMarker: Debug,

Call the Debug::fmt() implementation of Self. Read more
Source§

impl<T> Dynamic<Bound<Send, __, __, Clone, Unpin, __>> for T
where T: Send + Clone + Unpin,

Source§

unsafe fn clone_unchecked(this: &T) -> T

Unsafe form of Self::clone(). Read more
Source§

unsafe fn debug_unchecked( _this: &T, _f: &mut Formatter<'_>, ) -> Result<(), Error>

Unsafe form of Self::debug(). Read more
Source§

fn clone(this: &Self) -> Self
where Self: Sized, <B as IsBound>::CloneMarker: Clone,

Call the Clone::clone() implementation of Self. Read more
Source§

fn debug(this: &Self, f: &mut Formatter<'_>) -> Result<(), Error>
where Self: Sized, <B as IsBound>::DebugMarker: Debug,

Call the Debug::fmt() implementation of Self. Read more
Source§

impl<T> Dynamic<Bound<Send, __, __, Clone, __, __>> for T
where T: Send + Clone,

Source§

unsafe fn clone_unchecked(this: &T) -> T

Unsafe form of Self::clone(). Read more
Source§

unsafe fn debug_unchecked( _this: &T, _f: &mut Formatter<'_>, ) -> Result<(), Error>

Unsafe form of Self::debug(). Read more
Source§

fn clone(this: &Self) -> Self
where Self: Sized, <B as IsBound>::CloneMarker: Clone,

Call the Clone::clone() implementation of Self. Read more
Source§

fn debug(this: &Self, f: &mut Formatter<'_>) -> Result<(), Error>
where Self: Sized, <B as IsBound>::DebugMarker: Debug,

Call the Debug::fmt() implementation of Self. Read more
Source§

impl<T> Dynamic<Bound<Send, __, __, __, Unpin, __>> for T
where T: Send + Unpin,

Source§

unsafe fn clone_unchecked(_this: &T) -> T

Unsafe form of Self::clone(). Read more
Source§

unsafe fn debug_unchecked( _this: &T, _f: &mut Formatter<'_>, ) -> Result<(), Error>

Unsafe form of Self::debug(). Read more
Source§

fn clone(this: &Self) -> Self
where Self: Sized, <B as IsBound>::CloneMarker: Clone,

Call the Clone::clone() implementation of Self. Read more
Source§

fn debug(this: &Self, f: &mut Formatter<'_>) -> Result<(), Error>
where Self: Sized, <B as IsBound>::DebugMarker: Debug,

Call the Debug::fmt() implementation of Self. Read more
Source§

impl<T> Dynamic<Bound<Send, __, __, __, __, __>> for T
where T: Send,

Source§

unsafe fn clone_unchecked(_this: &T) -> T

Unsafe form of Self::clone(). Read more
Source§

unsafe fn debug_unchecked( _this: &T, _f: &mut Formatter<'_>, ) -> Result<(), Error>

Unsafe form of Self::debug(). Read more
Source§

fn clone(this: &Self) -> Self
where Self: Sized, <B as IsBound>::CloneMarker: Clone,

Call the Clone::clone() implementation of Self. Read more
Source§

fn debug(this: &Self, f: &mut Formatter<'_>) -> Result<(), Error>
where Self: Sized, <B as IsBound>::DebugMarker: Debug,

Call the Debug::fmt() implementation of Self. Read more
Source§

impl<T> Dynamic<Bound<__, Sync, Copy, Clone, Unpin, __>> for T
where T: Sync + Copy + Clone + Unpin,

Source§

unsafe fn clone_unchecked(this: &T) -> T

Unsafe form of Self::clone(). Read more
Source§

unsafe fn debug_unchecked( _this: &T, _f: &mut Formatter<'_>, ) -> Result<(), Error>

Unsafe form of Self::debug(). Read more
Source§

fn clone(this: &Self) -> Self
where Self: Sized, <B as IsBound>::CloneMarker: Clone,

Call the Clone::clone() implementation of Self. Read more
Source§

fn debug(this: &Self, f: &mut Formatter<'_>) -> Result<(), Error>
where Self: Sized, <B as IsBound>::DebugMarker: Debug,

Call the Debug::fmt() implementation of Self. Read more
Source§

impl<T> Dynamic<Bound<__, Sync, Copy, Clone, __, __>> for T
where T: Sync + Copy + Clone,

Source§

unsafe fn clone_unchecked(this: &T) -> T

Unsafe form of Self::clone(). Read more
Source§

unsafe fn debug_unchecked( _this: &T, _f: &mut Formatter<'_>, ) -> Result<(), Error>

Unsafe form of Self::debug(). Read more
Source§

fn clone(this: &Self) -> Self
where Self: Sized, <B as IsBound>::CloneMarker: Clone,

Call the Clone::clone() implementation of Self. Read more
Source§

fn debug(this: &Self, f: &mut Formatter<'_>) -> Result<(), Error>
where Self: Sized, <B as IsBound>::DebugMarker: Debug,

Call the Debug::fmt() implementation of Self. Read more
Source§

impl<T> Dynamic<Bound<__, Sync, Copy, __, Unpin, __>> for T
where T: Sync + Copy + Unpin,

Source§

unsafe fn clone_unchecked(_this: &T) -> T

Unsafe form of Self::clone(). Read more
Source§

unsafe fn debug_unchecked( _this: &T, _f: &mut Formatter<'_>, ) -> Result<(), Error>

Unsafe form of Self::debug(). Read more
Source§

fn clone(this: &Self) -> Self
where Self: Sized, <B as IsBound>::CloneMarker: Clone,

Call the Clone::clone() implementation of Self. Read more
Source§

fn debug(this: &Self, f: &mut Formatter<'_>) -> Result<(), Error>
where Self: Sized, <B as IsBound>::DebugMarker: Debug,

Call the Debug::fmt() implementation of Self. Read more
Source§

impl<T> Dynamic<Bound<__, Sync, Copy, __, __, __>> for T
where T: Sync + Copy,

Source§

unsafe fn clone_unchecked(_this: &T) -> T

Unsafe form of Self::clone(). Read more
Source§

unsafe fn debug_unchecked( _this: &T, _f: &mut Formatter<'_>, ) -> Result<(), Error>

Unsafe form of Self::debug(). Read more
Source§

fn clone(this: &Self) -> Self
where Self: Sized, <B as IsBound>::CloneMarker: Clone,

Call the Clone::clone() implementation of Self. Read more
Source§

fn debug(this: &Self, f: &mut Formatter<'_>) -> Result<(), Error>
where Self: Sized, <B as IsBound>::DebugMarker: Debug,

Call the Debug::fmt() implementation of Self. Read more
Source§

impl<T> Dynamic<Bound<__, Sync, __, Clone, Unpin, __>> for T
where T: Sync + Clone + Unpin,

Source§

unsafe fn clone_unchecked(this: &T) -> T

Unsafe form of Self::clone(). Read more
Source§

unsafe fn debug_unchecked( _this: &T, _f: &mut Formatter<'_>, ) -> Result<(), Error>

Unsafe form of Self::debug(). Read more
Source§

fn clone(this: &Self) -> Self
where Self: Sized, <B as IsBound>::CloneMarker: Clone,

Call the Clone::clone() implementation of Self. Read more
Source§

fn debug(this: &Self, f: &mut Formatter<'_>) -> Result<(), Error>
where Self: Sized, <B as IsBound>::DebugMarker: Debug,

Call the Debug::fmt() implementation of Self. Read more
Source§

impl<T> Dynamic<Bound<__, Sync, __, Clone, __, __>> for T
where T: Sync + Clone,

Source§

unsafe fn clone_unchecked(this: &T) -> T

Unsafe form of Self::clone(). Read more
Source§

unsafe fn debug_unchecked( _this: &T, _f: &mut Formatter<'_>, ) -> Result<(), Error>

Unsafe form of Self::debug(). Read more
Source§

fn clone(this: &Self) -> Self
where Self: Sized, <B as IsBound>::CloneMarker: Clone,

Call the Clone::clone() implementation of Self. Read more
Source§

fn debug(this: &Self, f: &mut Formatter<'_>) -> Result<(), Error>
where Self: Sized, <B as IsBound>::DebugMarker: Debug,

Call the Debug::fmt() implementation of Self. Read more
Source§

impl<T> Dynamic<Bound<__, Sync, __, __, Unpin, __>> for T
where T: Sync + Unpin,

Source§

unsafe fn clone_unchecked(_this: &T) -> T

Unsafe form of Self::clone(). Read more
Source§

unsafe fn debug_unchecked( _this: &T, _f: &mut Formatter<'_>, ) -> Result<(), Error>

Unsafe form of Self::debug(). Read more
Source§

fn clone(this: &Self) -> Self
where Self: Sized, <B as IsBound>::CloneMarker: Clone,

Call the Clone::clone() implementation of Self. Read more
Source§

fn debug(this: &Self, f: &mut Formatter<'_>) -> Result<(), Error>
where Self: Sized, <B as IsBound>::DebugMarker: Debug,

Call the Debug::fmt() implementation of Self. Read more
Source§

impl<T> Dynamic<Bound<__, Sync, __, __, __, __>> for T
where T: Sync,

Source§

unsafe fn clone_unchecked(_this: &T) -> T

Unsafe form of Self::clone(). Read more
Source§

unsafe fn debug_unchecked( _this: &T, _f: &mut Formatter<'_>, ) -> Result<(), Error>

Unsafe form of Self::debug(). Read more
Source§

fn clone(this: &Self) -> Self
where Self: Sized, <B as IsBound>::CloneMarker: Clone,

Call the Clone::clone() implementation of Self. Read more
Source§

fn debug(this: &Self, f: &mut Formatter<'_>) -> Result<(), Error>
where Self: Sized, <B as IsBound>::DebugMarker: Debug,

Call the Debug::fmt() implementation of Self. Read more
Source§

impl<T> Dynamic<Bound<__, __, Copy, Clone, Unpin, __>> for T
where T: Copy + Clone + Unpin,

Source§

unsafe fn clone_unchecked(this: &T) -> T

Unsafe form of Self::clone(). Read more
Source§

unsafe fn debug_unchecked( _this: &T, _f: &mut Formatter<'_>, ) -> Result<(), Error>

Unsafe form of Self::debug(). Read more
Source§

fn clone(this: &Self) -> Self
where Self: Sized, <B as IsBound>::CloneMarker: Clone,

Call the Clone::clone() implementation of Self. Read more
Source§

fn debug(this: &Self, f: &mut Formatter<'_>) -> Result<(), Error>
where Self: Sized, <B as IsBound>::DebugMarker: Debug,

Call the Debug::fmt() implementation of Self. Read more
Source§

impl<T> Dynamic<Bound<__, __, Copy, Clone, __, __>> for T
where T: Copy + Clone,

Source§

unsafe fn clone_unchecked(this: &T) -> T

Unsafe form of Self::clone(). Read more
Source§

unsafe fn debug_unchecked( _this: &T, _f: &mut Formatter<'_>, ) -> Result<(), Error>

Unsafe form of Self::debug(). Read more
Source§

fn clone(this: &Self) -> Self
where Self: Sized, <B as IsBound>::CloneMarker: Clone,

Call the Clone::clone() implementation of Self. Read more
Source§

fn debug(this: &Self, f: &mut Formatter<'_>) -> Result<(), Error>
where Self: Sized, <B as IsBound>::DebugMarker: Debug,

Call the Debug::fmt() implementation of Self. Read more
Source§

impl<T> Dynamic<Bound<__, __, Copy, __, Unpin, __>> for T
where T: Copy + Unpin,

Source§

unsafe fn clone_unchecked(_this: &T) -> T

Unsafe form of Self::clone(). Read more
Source§

unsafe fn debug_unchecked( _this: &T, _f: &mut Formatter<'_>, ) -> Result<(), Error>

Unsafe form of Self::debug(). Read more
Source§

fn clone(this: &Self) -> Self
where Self: Sized, <B as IsBound>::CloneMarker: Clone,

Call the Clone::clone() implementation of Self. Read more
Source§

fn debug(this: &Self, f: &mut Formatter<'_>) -> Result<(), Error>
where Self: Sized, <B as IsBound>::DebugMarker: Debug,

Call the Debug::fmt() implementation of Self. Read more
Source§

impl<T> Dynamic<Bound<__, __, Copy, __, __, __>> for T
where T: Copy,

Source§

unsafe fn clone_unchecked(_this: &T) -> T

Unsafe form of Self::clone(). Read more
Source§

unsafe fn debug_unchecked( _this: &T, _f: &mut Formatter<'_>, ) -> Result<(), Error>

Unsafe form of Self::debug(). Read more
Source§

fn clone(this: &Self) -> Self
where Self: Sized, <B as IsBound>::CloneMarker: Clone,

Call the Clone::clone() implementation of Self. Read more
Source§

fn debug(this: &Self, f: &mut Formatter<'_>) -> Result<(), Error>
where Self: Sized, <B as IsBound>::DebugMarker: Debug,

Call the Debug::fmt() implementation of Self. Read more
Source§

impl<T> Dynamic<Bound<__, __, __, Clone, Unpin, __>> for T
where T: Clone + Unpin,

Source§

unsafe fn clone_unchecked(this: &T) -> T

Unsafe form of Self::clone(). Read more
Source§

unsafe fn debug_unchecked( _this: &T, _f: &mut Formatter<'_>, ) -> Result<(), Error>

Unsafe form of Self::debug(). Read more
Source§

fn clone(this: &Self) -> Self
where Self: Sized, <B as IsBound>::CloneMarker: Clone,

Call the Clone::clone() implementation of Self. Read more
Source§

fn debug(this: &Self, f: &mut Formatter<'_>) -> Result<(), Error>
where Self: Sized, <B as IsBound>::DebugMarker: Debug,

Call the Debug::fmt() implementation of Self. Read more
Source§

impl<T> Dynamic<Bound<__, __, __, Clone, __, __>> for T
where T: Clone,

Source§

unsafe fn clone_unchecked(this: &T) -> T

Unsafe form of Self::clone(). Read more
Source§

unsafe fn debug_unchecked( _this: &T, _f: &mut Formatter<'_>, ) -> Result<(), Error>

Unsafe form of Self::debug(). Read more
Source§

fn clone(this: &Self) -> Self
where Self: Sized, <B as IsBound>::CloneMarker: Clone,

Call the Clone::clone() implementation of Self. Read more
Source§

fn debug(this: &Self, f: &mut Formatter<'_>) -> Result<(), Error>
where Self: Sized, <B as IsBound>::DebugMarker: Debug,

Call the Debug::fmt() implementation of Self. Read more
Source§

impl<T> Dynamic<Bound<__, __, __, __, Unpin, __>> for T
where T: Unpin,

Source§

unsafe fn clone_unchecked(_this: &T) -> T

Unsafe form of Self::clone(). Read more
Source§

unsafe fn debug_unchecked( _this: &T, _f: &mut Formatter<'_>, ) -> Result<(), Error>

Unsafe form of Self::debug(). Read more
Source§

fn clone(this: &Self) -> Self
where Self: Sized, <B as IsBound>::CloneMarker: Clone,

Call the Clone::clone() implementation of Self. Read more
Source§

fn debug(this: &Self, f: &mut Formatter<'_>) -> Result<(), Error>
where Self: Sized, <B as IsBound>::DebugMarker: Debug,

Call the Debug::fmt() implementation of Self. Read more
Source§

impl<T> Dynamic<Bound<__, __, __, __, __, __>> for T

Source§

unsafe fn clone_unchecked(_this: &T) -> T

Unsafe form of Self::clone(). Read more
Source§

unsafe fn debug_unchecked( _this: &T, _f: &mut Formatter<'_>, ) -> Result<(), Error>

Unsafe form of Self::debug(). Read more
Source§

fn clone(this: &Self) -> Self
where Self: Sized, <B as IsBound>::CloneMarker: Clone,

Call the Clone::clone() implementation of Self. Read more
Source§

fn debug(this: &Self, f: &mut Formatter<'_>) -> Result<(), Error>
where Self: Sized, <B as IsBound>::DebugMarker: Debug,

Call the Debug::fmt() implementation of Self. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Inspect<Static> for T
where T: 'static,

Source§

fn inspect() -> Static

Get the T for Self.
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<P, T> Receiver for P
where P: Deref<Target = T> + ?Sized, T: ?Sized,

Source§

type Target = T

🔬This is a nightly-only experimental API. (arbitrary_self_types)
The target type on which the method may be called.
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
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.