pub enum FramePointer {
Always,
NonLeaf,
MayOmit,
}
Variants§
Always
Forces the machine code generator to always preserve the frame pointers.
NonLeaf
Forces the machine code generator to preserve the frame pointers except for the leaf functions (i.e. those that don’t call other functions).
MayOmit
Allows the machine code generator to omit the frame pointers.
This option does not guarantee that the frame pointers will be omitted.
Implementations§
source§impl FramePointer
impl FramePointer
sourcepub fn ratchet(&mut self, rhs: FramePointer) -> FramePointer
pub fn ratchet(&mut self, rhs: FramePointer) -> FramePointer
It is intended that the “force frame pointer” transition is “one way” so this convenience assures such if used
Trait Implementations§
source§impl Clone for FramePointer
impl Clone for FramePointer
source§fn clone(&self) -> FramePointer
fn clone(&self) -> FramePointer
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 FramePointer
impl Debug for FramePointer
source§impl FromStr for FramePointer
impl FromStr for FramePointer
source§impl Hash for FramePointer
impl Hash for FramePointer
source§impl PartialEq for FramePointer
impl PartialEq for FramePointer
impl Copy for FramePointer
impl StructuralPartialEq for FramePointer
Auto Trait Implementations§
impl Freeze for FramePointer
impl RefUnwindSafe for FramePointer
impl Send for FramePointer
impl Sync for FramePointer
impl Unpin for FramePointer
impl UnwindSafe for FramePointer
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§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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 moresource§impl<T> WithSubscriber for T
impl<T> WithSubscriber for T
source§fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
source§fn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
impl<'a, T> Captures<'a> for Twhere
T: ?Sized,
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: 1 byte
Size for each variant:
Always
: 0 bytesNonLeaf
: 0 bytesMayOmit
: 0 bytes