Struct rustc_target::abi::Size
source · pub struct Size {
raw: u64,
}
Expand description
Size of a type in bytes.
Fields
raw: u64
Implementations
sourceimpl Size
impl Size
pub const ZERO: Size = _
sourcepub fn from_bits(bits: impl TryInto<u64>) -> Size
pub fn from_bits(bits: impl TryInto<u64>) -> Size
Rounds bits
up to the next-higher byte boundary, if bits
is
not a multiple of 8.
pub fn from_bytes(bytes: impl TryInto<u64>) -> Size
pub fn bytes(self) -> u64
pub fn bytes_usize(self) -> usize
pub fn bits(self) -> u64
pub fn bits_usize(self) -> usize
pub fn align_to(self, align: Align) -> Size
pub fn is_aligned(self, align: Align) -> bool
pub fn checked_add<C: HasDataLayout>(self, offset: Size, cx: &C) -> Option<Size>
pub fn checked_mul<C: HasDataLayout>(self, count: u64, cx: &C) -> Option<Size>
sourcepub fn sign_extend(self, value: u128) -> u128
pub fn sign_extend(self, value: u128) -> u128
Truncates value
to self
bits and then sign-extends it to 128 bits
(i.e., if it is negative, fill with 1’s on the left).
pub fn signed_int_min(&self) -> i128
pub fn signed_int_max(&self) -> i128
pub fn unsigned_int_max(&self) -> u128
Trait Implementations
sourceimpl AddAssign<Size> for Size
impl AddAssign<Size> for Size
sourcefn add_assign(&mut self, other: Size)
fn add_assign(&mut self, other: Size)
Performs the
+=
operation. Read moresourceimpl<__CTX> HashStable<__CTX> for Sizewhere
__CTX: HashStableContext,
impl<__CTX> HashStable<__CTX> for Sizewhere
__CTX: HashStableContext,
fn hash_stable(&self, __hcx: &mut __CTX, __hasher: &mut StableHasher)
sourceimpl Ord for Size
impl Ord for Size
1.21.0 · sourcefn max(self, other: Self) -> Self
fn max(self, other: Self) -> Self
Compares and returns the maximum of two values. Read more
1.21.0 · sourcefn min(self, other: Self) -> Self
fn min(self, other: Self) -> Self
Compares and returns the minimum of two values. Read more
1.50.0 · sourcefn clamp(self, min: Self, max: Self) -> Selfwhere
Self: PartialOrd<Self>,
fn clamp(self, min: Self, max: Self) -> Selfwhere
Self: PartialOrd<Self>,
Restrict a value to a certain interval. Read more
sourceimpl PartialOrd<Size> for Size
impl PartialOrd<Size> for Size
sourcefn partial_cmp(&self, other: &Size) -> Option<Ordering>
fn partial_cmp(&self, other: &Size) -> Option<Ordering>
1.0.0 · sourcefn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for
self
and other
) and is used by the <=
operator. Read moresourceimpl Step for Size
impl Step for Size
sourcefn steps_between(start: &Self, end: &Self) -> Option<usize>
fn steps_between(start: &Self, end: &Self) -> Option<usize>
🔬This is a nightly-only experimental API. (
step_trait
)sourcefn forward_checked(start: Self, count: usize) -> Option<Self>
fn forward_checked(start: Self, count: usize) -> Option<Self>
🔬This is a nightly-only experimental API. (
step_trait
)sourcefn forward(start: Self, count: usize) -> Self
fn forward(start: Self, count: usize) -> Self
🔬This is a nightly-only experimental API. (
step_trait
)sourceunsafe fn forward_unchecked(start: Self, count: usize) -> Self
unsafe fn forward_unchecked(start: Self, count: usize) -> Self
🔬This is a nightly-only experimental API. (
step_trait
)sourcefn backward_checked(start: Self, count: usize) -> Option<Self>
fn backward_checked(start: Self, count: usize) -> Option<Self>
🔬This is a nightly-only experimental API. (
step_trait
)sourcefn backward(start: Self, count: usize) -> Self
fn backward(start: Self, count: usize) -> Self
🔬This is a nightly-only experimental API. (
step_trait
)sourceunsafe fn backward_unchecked(start: Self, count: usize) -> Self
unsafe fn backward_unchecked(start: Self, count: usize) -> Self
🔬This is a nightly-only experimental API. (
step_trait
)impl Copy for Size
impl Eq for Size
impl StructuralEq for Size
impl StructuralPartialEq for Size
Auto Trait Implementations
impl RefUnwindSafe for Size
impl Send for Size
impl Sync for Size
impl Unpin for Size
impl UnwindSafe for Size
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Layout
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference’s “Type Layout” chapter for details on type layout guarantees.
Size: 8 bytes