Struct lc3_ensemble::sim::io::BufferedIO
source · pub struct BufferedIO { /* private fields */ }Expand description
IO that reads from an input buffer and writes to an output buffer.
The input buffer is accessible in the simulator memory through the KBSR and KBDR. The output buffer is accessible in the simulator memory through the DSR and DDR.
The buffers can be accessed in code via BufferedIO::get_input and BufferedIO::get_output.
Note that if a input/output lock guard is acquired from one of the locks of this IO, the input/output becomes temporarily inaccessible to the simulator. Thus, a lock guard should never be leaked otherwise the simulator loses access to the input/output.
Implementations§
Trait Implementations§
source§impl Clone for BufferedIO
impl Clone for BufferedIO
source§fn clone(&self) -> BufferedIO
fn clone(&self) -> BufferedIO
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 Default for BufferedIO
impl Default for BufferedIO
source§impl From<BufferedIO> for SimIO
impl From<BufferedIO> for SimIO
source§fn from(value: BufferedIO) -> Self
fn from(value: BufferedIO) -> Self
Converts to this type from the input type.
Auto Trait Implementations§
impl Freeze for BufferedIO
impl RefUnwindSafe for BufferedIO
impl Send for BufferedIO
impl Sync for BufferedIO
impl Unpin for BufferedIO
impl UnwindSafe for BufferedIO
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