Struct heed_types::CowType

source ·
pub struct CowType<T>(_);
Expand description

Describes a type that must be memory aligned and will be reallocated if it is not.

A Cow type is returned to represent this behavior.

If you need to store a type that doesn’t depends on any memory alignment it is recommended to use the UnalignedType.

If you don’t want to be bored with the Cow type you can use the OwnedType.

To store slices, you must look at the CowSlice, OwnedSlice or UnalignedSlice types.

Trait Implementations§

source§

impl<'a, T: AnyBitPattern + NoUninit> BytesDecode<'a> for CowType<T>

§

type DItem = Cow<'a, T>

source§

fn bytes_decode(bytes: &'a [u8]) -> Result<Self::DItem, BoxedError>

source§

impl<'a, T: NoUninit> BytesEncode<'a> for CowType<T>

§

type EItem = T

source§

fn bytes_encode(item: &'a Self::EItem) -> Result<Cow<'_, [u8]>, BoxedError>

source§

impl<T> Send for CowType<T>

source§

impl<T> Sync for CowType<T>

Auto Trait Implementations§

§

impl<T> RefUnwindSafe for CowType<T>where T: RefUnwindSafe,

§

impl<T> Unpin for CowType<T>where T: Unpin,

§

impl<T> UnwindSafe for CowType<T>where T: UnwindSafe,

Blanket Implementations§

source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

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

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

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

source§

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

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere 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, U> TryFrom<U> for Twhere U: Into<T>,

§

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 Twhere U: TryFrom<T>,

§

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.