Struct tock_registers::registers::ReadWrite
source · [−]#[repr(transparent)]pub struct ReadWrite<T: UIntLike, R: RegisterLongName = ()> { /* private fields */ }
Expand description
Read/Write registers.
For accessing and manipulating the register contents, the
Readable
, Writeable
and
ReadWriteable
traits are
implemented.
Trait Implementations
sourceimpl<T: UIntLike, R: RegisterLongName> Readable for ReadWrite<T, R>
impl<T: UIntLike, R: RegisterLongName> Readable for ReadWrite<T, R>
type T = T
type R = R
sourcefn read_as_enum<E: TryFromValue<Self::T, EnumType = E>>(
&self,
field: Field<Self::T, Self::R>
) -> Option<E>
fn read_as_enum<E: TryFromValue<Self::T, EnumType = E>>(
&self,
field: Field<Self::T, Self::R>
) -> Option<E>
Set the raw register value
sourcefn extract(&self) -> LocalRegisterCopy<Self::T, Self::R>
fn extract(&self) -> LocalRegisterCopy<Self::T, Self::R>
Make a local copy of the register
sourcefn is_set(&self, field: Field<Self::T, Self::R>) -> bool
fn is_set(&self, field: Field<Self::T, Self::R>) -> bool
Check if one or more bits in a field are set
sourcefn matches_any(&self, field: FieldValue<Self::T, Self::R>) -> bool
fn matches_any(&self, field: FieldValue<Self::T, Self::R>) -> bool
Check if any specified parts of a field match
sourcefn matches_all(&self, field: FieldValue<Self::T, Self::R>) -> bool
fn matches_all(&self, field: FieldValue<Self::T, Self::R>) -> bool
Check if all specified parts of a field match
sourceimpl<T: UIntLike, R: RegisterLongName> Writeable for ReadWrite<T, R>
impl<T: UIntLike, R: RegisterLongName> Writeable for ReadWrite<T, R>
type T = T
type R = R
sourcefn write(&self, field: FieldValue<Self::T, Self::R>)
fn write(&self, field: FieldValue<Self::T, Self::R>)
Write the value of one or more fields, overwriting the other fields with zero
sourcefn modify_no_read(
&self,
original: LocalRegisterCopy<Self::T, Self::R>,
field: FieldValue<Self::T, Self::R>
)
fn modify_no_read(
&self,
original: LocalRegisterCopy<Self::T, Self::R>,
field: FieldValue<Self::T, Self::R>
)
Write the value of one or more fields, maintaining the value of unchanged fields via a provided original value, rather than a register read. Read more
Auto Trait Implementations
impl<T, R = ()> !RefUnwindSafe for ReadWrite<T, R>
impl<T, R> Send for ReadWrite<T, R> where
R: Send,
T: Send,
impl<T, R = ()> !Sync for ReadWrite<T, R>
impl<T, R> Unpin for ReadWrite<T, R> where
R: Unpin,
T: Unpin,
impl<T, R> UnwindSafe for ReadWrite<T, R> where
R: UnwindSafe,
T: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T, R, S> ReadWriteable for S where
R: RegisterLongName,
S: Readable<T = T, R = R> + Writeable<T = T, R = R>,
T: UIntLike,
impl<T, R, S> ReadWriteable for S where
R: RegisterLongName,
S: Readable<T = T, R = R> + Writeable<T = T, R = R>,
T: UIntLike,
type T = T
type R = R
sourcefn modify(
&self,
field: FieldValue<<S as ReadWriteable>::T, <S as ReadWriteable>::R>
)
fn modify(
&self,
field: FieldValue<<S as ReadWriteable>::T, <S as ReadWriteable>::R>
)
Write the value of one or more fields, leaving the other fields unchanged