[][src]Struct frenetic::Context

#[repr(transparent)]pub struct Context(_);

A CPU context

This structure holds the non-volatile state in the platform's calling convention.

Implementations

impl Context[src]

pub fn wipe()[src]

Clear all basic volatile registers and CPU flags

#[must_use]pub fn save(&mut self) -> bool[src]

Saves the non-volatile registers

NOTE: This function can return more than once.

This function returns true when returning locally from a save() operation and returns false when returning remotely from a load() operation.

pub unsafe fn load(&self) -> ![src]

Load a context

This function stops executing at the current location and resumes execution wherever Self::save() was called (with a false return value).

Safety

This is very unsafe. You MUST have called Self::save() before calling this function. Further, all the pointers in the non-volatile registers must still be valid.

Trait Implementations

impl Default for Context[src]

Auto Trait Implementations

impl Send for Context

impl Sync for Context

impl Unpin for Context

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.