RegisterStateRef

Struct RegisterStateRef 

Source
pub struct RegisterStateRef<'a>(/* private fields */);
Expand description

A reference to the register state saved when an exception happened.

Implementations§

Source§

impl RegisterStateRef<'_>

Source

pub unsafe fn get_mut(&mut self) -> &mut RegisterState

Returns a mutable reference to the register state.

§Safety

Any changes made to the saved register state made via this reference must not cause undefined behaviour when returning from the exception.

Exactly what this means depends on the exception and the context in which it happened, but for example changing the ELR to point to an invalid or unexpected location, or changing some general-purpose register value which the code doesn’t expect to change could cause undefined behaviour.

Trait Implementations§

Source§

impl AsRef<RegisterState> for RegisterStateRef<'_>

Source§

fn as_ref(&self) -> &RegisterState

Converts this type into a shared reference of the (usually inferred) input type.
Source§

impl Borrow<RegisterState> for RegisterStateRef<'_>

Source§

fn borrow(&self) -> &RegisterState

Immutably borrows from an owned value. Read more
Source§

impl<'a> Debug for RegisterStateRef<'a>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Deref for RegisterStateRef<'_>

Source§

type Target = RegisterState

The resulting type after dereferencing.
Source§

fn deref(&self) -> &Self::Target

Dereferences the value.
Source§

impl<'a> PartialEq for RegisterStateRef<'a>

Source§

fn eq(&self, other: &RegisterStateRef<'a>) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl<'a> Eq for RegisterStateRef<'a>

Source§

impl<'a> StructuralPartialEq for RegisterStateRef<'a>

Auto Trait Implementations§

§

impl<'a> Freeze for RegisterStateRef<'a>

§

impl<'a> RefUnwindSafe for RegisterStateRef<'a>

§

impl<'a> Send for RegisterStateRef<'a>

§

impl<'a> Sync for RegisterStateRef<'a>

§

impl<'a> Unpin for RegisterStateRef<'a>

§

impl<'a> !UnwindSafe for RegisterStateRef<'a>

Blanket Implementations§

§

impl<T> Any for T
where T: 'static + ?Sized,

§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<T> Borrow<T> for T
where T: ?Sized,

§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
§

impl<T> BorrowMut<T> for T
where T: ?Sized,

§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> From<T> for T

§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T, U> Into<U> for T
where U: From<T>,

§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

§

impl<P, T> Receiver for P
where P: Deref<Target = T> + ?Sized, T: ?Sized,

§

type Target = T

🔬This is a nightly-only experimental API. (arbitrary_self_types)
The target type on which the method may be called.
§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.