pub struct ReadWriteRegWrapper<'a, T: UIntLike, N: RegisterLongName, R: BaseReadableRegister<T> + BaseWriteableRegister<T>>(/* private fields */);Expand description
Workaround-wrapper for read- and writable LiteX registers
This workaround-wrapper is required to make an associated type of
LiteXSoCRegisterConfiguration generic over the
[RegisterLongName] until generic associated types stabilize in
Rust. Please see the LiteXSoCRegisterConfiguration
documentation for more information.
Implementations§
Source§impl<'a, T: UIntLike, N: RegisterLongName, R: BaseReadableRegister<T> + BaseWriteableRegister<T>> ReadWriteRegWrapper<'a, T, N, R>
impl<'a, T: UIntLike, N: RegisterLongName, R: BaseReadableRegister<T> + BaseWriteableRegister<T>> ReadWriteRegWrapper<'a, T, N, R>
Trait Implementations§
Source§impl<T: UIntLike, N: RegisterLongName, R: BaseReadableRegister<T> + BaseWriteableRegister<T>> BaseReadableRegister<T> for ReadWriteRegWrapper<'_, T, N, R>
impl<T: UIntLike, N: RegisterLongName, R: BaseReadableRegister<T> + BaseWriteableRegister<T>> BaseReadableRegister<T> for ReadWriteRegWrapper<'_, T, N, R>
Source§impl<T: UIntLike, N: RegisterLongName, R: BaseReadableRegister<T> + BaseWriteableRegister<T>> BaseWriteableRegister<T> for ReadWriteRegWrapper<'_, T, N, R>
impl<T: UIntLike, N: RegisterLongName, R: BaseReadableRegister<T> + BaseWriteableRegister<T>> BaseWriteableRegister<T> for ReadWriteRegWrapper<'_, T, N, R>
Auto Trait Implementations§
impl<'a, T, N, R> Freeze for ReadWriteRegWrapper<'a, T, N, R>
impl<'a, T, N, R> RefUnwindSafe for ReadWriteRegWrapper<'a, T, N, R>
impl<'a, T, N, R> Send for ReadWriteRegWrapper<'a, T, N, R>
impl<'a, T, N, R> Sync for ReadWriteRegWrapper<'a, T, N, R>
impl<'a, T, N, R> Unpin for ReadWriteRegWrapper<'a, T, N, R>
impl<'a, T, N, R> UnsafeUnpin for ReadWriteRegWrapper<'a, T, N, R>
impl<'a, T, N, R> UnwindSafe for ReadWriteRegWrapper<'a, T, N, R>
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
Source§impl<R, T> Read<T> for Rwhere
T: UIntLike,
R: BaseReadableRegister<T>,
impl<R, T> Read<T> for Rwhere
T: UIntLike,
R: BaseReadableRegister<T>,
const REG_WIDTH: usize = const REG_WIDTH: usize = R::REG_WIDTH;
type Reg = <R as BaseReadableRegister<T>>::Reg
Source§fn read_as_enum<E>(&self, field: Field<T, <R as Read<T>>::Reg>) -> Option<E>where
E: TryFromValue<T, EnumType = E>,
fn read_as_enum<E>(&self, field: Field<T, <R as Read<T>>::Reg>) -> Option<E>where
E: TryFromValue<T, EnumType = E>,
Read value of the given field as an enum member
Source§fn extract(&self) -> LocalRegisterCopy<T, <R as Read<T>>::Reg>
fn extract(&self) -> LocalRegisterCopy<T, <R as Read<T>>::Reg>
Make a local copy of the register
Source§fn is_set(&self, field: Field<T, <R as Read<T>>::Reg>) -> bool
fn is_set(&self, field: Field<T, <R as Read<T>>::Reg>) -> bool
Check if one or more bits in a field are set