Skip to main content

BaseReadableRegister

Trait BaseReadableRegister 

Source
pub trait BaseReadableRegister<T: UIntLike> {
    type Reg: RegisterLongName;

    const REG_WIDTH: usize;

    // Required method
    fn base_get(&self) -> T;
}
Expand description

Trait to be implemented by custom register structs that support reading the current value

§DO NOT USE DIRECTLY

This must be public to prevent generating a private_in_public but really should not be used directly. Use Read instead, which also incorporates this functionality.

Required Associated Constants§

Required Associated Types§

Source

type Reg: RegisterLongName

Required Methods§

Source

fn base_get(&self) -> T

Get the raw register value

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

Source§

impl<N: RegisterLongName> BaseReadableRegister<u8> for ReadOnly8C8B32<N>

Source§

const REG_WIDTH: usize = 8usize

Source§

type Reg = N

Source§

impl<N: RegisterLongName> BaseReadableRegister<u8> for ReadOnly8C32B32<N>

Source§

const REG_WIDTH: usize = 8usize

Source§

type Reg = N

Source§

impl<N: RegisterLongName> BaseReadableRegister<u8> for ReadWrite8C8B32<N>

Source§

const REG_WIDTH: usize = 8usize

Source§

type Reg = N

Source§

impl<N: RegisterLongName> BaseReadableRegister<u8> for ReadWrite8C32B32<N>

Source§

const REG_WIDTH: usize = 8usize

Source§

type Reg = N

Source§

impl<N: RegisterLongName> BaseReadableRegister<u16> for ReadOnly16C8B32<N>

Source§

const REG_WIDTH: usize = 16usize

Source§

type Reg = N

Source§

impl<N: RegisterLongName> BaseReadableRegister<u16> for ReadOnly16C32B32<N>

Source§

const REG_WIDTH: usize = 16usize

Source§

type Reg = N

Source§

impl<N: RegisterLongName> BaseReadableRegister<u16> for ReadWrite16C8B32<N>

Source§

const REG_WIDTH: usize = 16usize

Source§

type Reg = N

Source§

impl<N: RegisterLongName> BaseReadableRegister<u16> for ReadWrite16C32B32<N>

Source§

const REG_WIDTH: usize = 16usize

Source§

type Reg = N

Source§

impl<N: RegisterLongName> BaseReadableRegister<u32> for ReadOnly32C8B32<N>

Source§

const REG_WIDTH: usize = 32usize

Source§

type Reg = N

Source§

impl<N: RegisterLongName> BaseReadableRegister<u32> for ReadOnly32C32B32<N>

Source§

const REG_WIDTH: usize = 32usize

Source§

type Reg = N

Source§

impl<N: RegisterLongName> BaseReadableRegister<u32> for ReadWrite32C8B32<N>

Source§

const REG_WIDTH: usize = 32usize

Source§

type Reg = N

Source§

impl<N: RegisterLongName> BaseReadableRegister<u32> for ReadWrite32C32B32<N>

Source§

const REG_WIDTH: usize = 32usize

Source§

type Reg = N

Source§

impl<N: RegisterLongName> BaseReadableRegister<u64> for ReadOnly64C8B32<N>

Source§

const REG_WIDTH: usize = 64usize

Source§

type Reg = N

Source§

impl<N: RegisterLongName> BaseReadableRegister<u64> for ReadOnly64C32B32<N>

Source§

const REG_WIDTH: usize = 64usize

Source§

type Reg = N

Source§

impl<N: RegisterLongName> BaseReadableRegister<u64> for ReadWrite64C8B32<N>

Source§

const REG_WIDTH: usize = 64usize

Source§

type Reg = N

Source§

impl<N: RegisterLongName> BaseReadableRegister<u64> for ReadWrite64C32B32<N>

Source§

const REG_WIDTH: usize = 64usize

Source§

type Reg = N

Source§

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>> BaseReadableRegister<T> for ReadRegWrapper<'_, T, N, R>

Source§

const REG_WIDTH: usize = R::REG_WIDTH

Source§

type Reg = N