Struct alkahest::Ref

source ·
pub struct Ref<F: ?Sized> { /* private fields */ }
Expand description

Ref is a formula wrapper. It serializes the value in dynamic payload and stores relative offset and the ref metadata. Metadata is required for unsized types and is () for all sized types. The slice type is unsized type that uses length metadata. Structures allows last field to be of unsized type. In this case metadata of the field inherited by the struct.

Trait Implementations§

source§

impl<F> Formula for Ref<F>where F: BareFormula + ?Sized,

source§

const MAX_STACK_SIZE: Option<usize> = _

Maximum size of stack this formula occupies.
source§

const EXACT_SIZE: bool = true

Signals that MAX_STACK_SIZE is accurate.
source§

const HEAPLESS: bool = _

Signals that heap is not used for serialzation.

Auto Trait Implementations§

§

impl<F: ?Sized> RefUnwindSafe for Ref<F>

§

impl<F: ?Sized> Send for Ref<F>

§

impl<F: ?Sized> Sync for Ref<F>

§

impl<F: ?Sized> Unpin for Ref<F>

§

impl<F: ?Sized> UnwindSafe for Ref<F>

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<'de, F, T> Deserialize<'de, As<F>> for Twhere F: BareFormula + ?Sized, T: Deserialize<'de, F>,

source§

fn deserialize(deserializer: Deserializer<'de>) -> Result<T, DeserializeError>

Deserializes value provided deserializer. Returns deserialized value and the number of bytes consumed from the and of input. Read more
source§

fn deserialize_in_place( &mut self, deserializer: Deserializer<'de> ) -> Result<(), DeserializeError>

Deserializes value in-place provided deserializer. Overwrites self with data from the input. Read more
source§

impl<'de, F, T> Deserialize<'de, Ref<F>> for Twhere F: BareFormula + ?Sized, T: Deserialize<'de, F> + ?Sized,

source§

fn deserialize(de: Deserializer<'de>) -> Result<T, DeserializeError>

Deserializes value provided deserializer. Returns deserialized value and the number of bytes consumed from the and of input. Read more
source§

fn deserialize_in_place( &mut self, de: Deserializer<'de> ) -> Result<(), DeserializeError>

Deserializes value in-place provided deserializer. Overwrites self with data from the input. 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<F, T> Serialize<As<F>> for Twhere F: BareFormula + ?Sized, T: Serialize<F>,

source§

fn serialize<B>( self, sizes: &mut Sizes, buffer: B ) -> Result<(), <B as Buffer>::Error>where B: Buffer,

Serializes self into the given buffer. heap specifies the size of the buffer’s heap occupied prior to this call. Read more
source§

fn size_hint(&self) -> Option<Sizes>

Returns heap and stack sizes required to serialize self. If some sizes are returned they must be exact. Read more
source§

impl<F, T> Serialize<Ref<F>> for Twhere F: BareFormula + ?Sized, T: Serialize<F>,

source§

fn serialize<B>( self, sizes: &mut Sizes, buffer: B ) -> Result<(), <B as Buffer>::Error>where B: Buffer,

Serializes self into the given buffer. heap specifies the size of the buffer’s heap occupied prior to this call. Read more
source§

fn size_hint(&self) -> Option<Sizes>

Returns heap and stack sizes required to serialize self. If some sizes are returned they must be exact. Read more
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.