pub trait ReadWrite<T: UIntLike>: Read<T> + Write<T> {
const REG_WIDTH: usize;
// Required methods
fn modify(&self, field: FieldValue<T, <Self as Read<T>>::Reg>);
fn modify_no_read(
&self,
original: LocalRegisterCopy<T, <Self as Read<T>>::Reg>,
field: FieldValue<T, <Self as Read<T>>::Reg>,
);
}
Expand description
Readable and writable register
This interface is analogous to the methods supported on
tock_registers::registers::ReadWrite
types
It is automatically implemented for all types that are both
BaseReadableRegister
and BaseWriteableRegister
s
Required Associated Constants§
Required Methods§
Sourcefn modify(&self, field: FieldValue<T, <Self as Read<T>>::Reg>)
fn modify(&self, field: FieldValue<T, <Self as Read<T>>::Reg>)
Write the value of one or more fields, leaving the other fields unchanged
Sourcefn modify_no_read(
&self,
original: LocalRegisterCopy<T, <Self as Read<T>>::Reg>,
field: FieldValue<T, <Self as Read<T>>::Reg>,
)
fn modify_no_read( &self, original: LocalRegisterCopy<T, <Self as Read<T>>::Reg>, field: FieldValue<T, <Self as Read<T>>::Reg>, )
Write the value of one or more fields, maintaining the value of unchanged fields via a provided original value, rather than a register read.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.