[−][src]Struct rubidium::DangerWriteVolAddr
Represents an MMIO address that can be safely read, but writes are dangerous.
Unlike with raw pointers, this type favors unsafe construction and then assumes that all usage is safe once the value has been constructed.
The convention is that reading the address will have no side effects.
However, writing to the address will potentially do something bad if you
aren't careful, and so writes are possible but unsafe
.
Methods
impl<T> DangerWriteVolAddr<T>
[src]
#[must_use]pub fn read(&self) -> T where
T: Copy,
[src]
T: Copy,
Reads the current value at the address.
pub unsafe fn write(&self, t: T) where
T: Copy,
[src]
T: Copy,
Writes a new value to the address.
Safety
- The safety rules depend on what address you're writing to. Each dangerous MMIO location has its own rules.
Trait Implementations
impl<T: Clone> Clone for DangerWriteVolAddr<T>
[src]
fn clone(&self) -> DangerWriteVolAddr<T>
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl<T: Copy> Copy for DangerWriteVolAddr<T>
[src]
impl<T: Debug> Debug for DangerWriteVolAddr<T>
[src]
Auto Trait Implementations
impl<T> Send for DangerWriteVolAddr<T> where
T: Send,
T: Send,
impl<T> Sync for DangerWriteVolAddr<T> where
T: Sync,
T: Sync,
impl<T> Unpin for DangerWriteVolAddr<T> where
T: Unpin,
T: Unpin,
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
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>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,