pub struct FrameStack { /* private fields */ }
Expand description
The stack of call frames.
This struct is used within the Simulator to keep track of the frames of subroutine/trap calls.
The amount of information it keeps track of depends on the debug_frames
flag of the Simulator.
- If the
debug_frames
flag is true, this keeps track of a Vec ofFrame
s, which contains a large set of information about each frame. - If the
debug_frames
flag is false, this only keeps track of the number of frames traversed.
Implementations§
Source§impl FrameStack
impl FrameStack
Sourcepub fn get_trap_def(&self, vect: u8) -> Option<&ParameterList>
pub fn get_trap_def(&self, vect: u8) -> Option<&ParameterList>
Gets the parameter definition for a trap (if it is defined).
Sourcepub fn get_subroutine_def(&self, addr: u16) -> Option<&ParameterList>
pub fn get_subroutine_def(&self, addr: u16) -> Option<&ParameterList>
Gets the parameter definition for a subroutine (if it is defined).
Note that the simulator does not automatically make subroutine definitions.
Subroutine definitions have to be manually set by the FrameStack::set_subroutine_def
method.
Sourcepub fn set_subroutine_def(&mut self, addr: u16, params: ParameterList)
pub fn set_subroutine_def(&mut self, addr: u16, params: ParameterList)
Sets the parameter definition for a subroutine.
This will overwrite any preexisting definition for a given subroutine.
Trait Implementations§
Source§impl Debug for FrameStack
impl Debug for FrameStack
Auto Trait Implementations§
impl Freeze for FrameStack
impl RefUnwindSafe for FrameStack
impl Send for FrameStack
impl Sync for FrameStack
impl Unpin for FrameStack
impl UnwindSafe for FrameStack
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