pub struct SumTypeVariantLayout {
pub ty: AlgebraicTypeLayout,
pub name: Option<Box<str>>,
}Expand description
A mirrior of SumTypeVariant annotated with a Layout.
Fields§
§ty: AlgebraicTypeLayoutThe type of the variant.
name: Option<Box<str>>An optional name of the variant.
This allows us to convert back to SumTypeVariant,
which we do when reporting type errors.
Implementations§
Trait Implementations§
Source§impl Clone for SumTypeVariantLayout
impl Clone for SumTypeVariantLayout
Source§fn clone(&self) -> SumTypeVariantLayout
fn clone(&self) -> SumTypeVariantLayout
Returns a copy 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 Debug for SumTypeVariantLayout
impl Debug for SumTypeVariantLayout
Source§impl MemoryUsage for SumTypeVariantLayout
impl MemoryUsage for SumTypeVariantLayout
Source§fn heap_usage(&self) -> usize
fn heap_usage(&self) -> usize
The heap memory usage of this type. The default implementation returns 0.
Source§impl PartialEq for SumTypeVariantLayout
impl PartialEq for SumTypeVariantLayout
impl Eq for SumTypeVariantLayout
impl StructuralPartialEq for SumTypeVariantLayout
Auto Trait Implementations§
impl Freeze for SumTypeVariantLayout
impl RefUnwindSafe for SumTypeVariantLayout
impl Send for SumTypeVariantLayout
impl Sync for SumTypeVariantLayout
impl Unpin for SumTypeVariantLayout
impl UnwindSafe for SumTypeVariantLayout
Blanket Implementations§
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.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 more