[−][src]Enum rustc_middle::ty::layout::SizeSkeleton
Type size "skeleton", i.e., the only information determining a type's size. While this is conservative, (aside from constant sizes, only pointers, newtypes thereof and null pointer optimized enums are allowed), it is enough to statically check common use cases of transmute.
Variants
Known(Size)Any statically computable Layout.
A potentially-fat pointer.
Fields of Pointer
Implementations
impl<'tcx> SizeSkeleton<'tcx>[src]
pub fn compute(
ty: Ty<'tcx>,
tcx: TyCtxt<'tcx>,
param_env: ParamEnv<'tcx>
) -> Result<SizeSkeleton<'tcx>, LayoutError<'tcx>>[src]
ty: Ty<'tcx>,
tcx: TyCtxt<'tcx>,
param_env: ParamEnv<'tcx>
) -> Result<SizeSkeleton<'tcx>, LayoutError<'tcx>>
pub fn same_size(self, other: SizeSkeleton<'_>) -> bool[src]
Trait Implementations
impl<'tcx> Clone for SizeSkeleton<'tcx>[src]
pub fn clone(&self) -> SizeSkeleton<'tcx>[src]
pub fn clone_from(&mut self, source: &Self)1.0.0[src]
impl<'tcx> Copy for SizeSkeleton<'tcx>[src]
impl<'tcx> Debug for SizeSkeleton<'tcx>[src]
Auto Trait Implementations
impl<'tcx> !RefUnwindSafe for SizeSkeleton<'tcx>
impl<'tcx> !Send for SizeSkeleton<'tcx>
impl<'tcx> !Sync for SizeSkeleton<'tcx>
impl<'tcx> Unpin for SizeSkeleton<'tcx>
impl<'tcx> !UnwindSafe for SizeSkeleton<'tcx>
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<'tcx, T> ArenaAllocatable<'tcx, ()> for T where
T: Copy, [src]
T: Copy,
pub fn allocate_on(Self, &'a Arena<'tcx>) -> &'a mut T[src]
pub fn allocate_from_iter(
&'a Arena<'tcx>,
impl IntoIterator<Item = T>
) -> &'a mut [T][src]
&'a Arena<'tcx>,
impl IntoIterator<Item = T>
) -> &'a mut [T]
impl<T> Borrow<T> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T[src]
impl<'a, T> Captures<'a> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> From<T> for T[src]
impl<T, U> Into<U> for T where
U: From<T>, [src]
U: From<T>,
impl<T> MaybeResult<T> for T[src]
type Error = !
pub fn from(Result<T, <T as MaybeResult<T>>::Error>) -> T[src]
pub fn to_result(self) -> Result<T, <T as MaybeResult<T>>::Error>[src]
impl<T> ToOwned for T where
T: Clone, [src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T[src]
pub fn clone_into(&self, target: &mut T)[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>, [src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.