Skip to main content

BaseWriteableRegister

Trait BaseWriteableRegister 

pub trait BaseWriteableRegister<T>
where T: UIntLike,
{ type Reg: RegisterLongName; const REG_WIDTH: usize; // Required method fn base_set(&self, value: T); }
Expand description

Trait to be implemented by custom register structs that support writing to them

§DO NOT USE DIRECTLY

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

Required Associated Constants§

Required Associated Types§

type Reg: RegisterLongName

Required Methods§

fn base_set(&self, value: T)

Set the raw register value

Dyn Compatibility§

This trait is not dyn compatible.

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

Implementors§

§

impl<N> BaseWriteableRegister<u8> for ReadWrite8C8B32<N>
where N: RegisterLongName,

§

const REG_WIDTH: usize = 8usize

§

type Reg = N

§

impl<N> BaseWriteableRegister<u8> for ReadWrite8C32B32<N>
where N: RegisterLongName,

§

const REG_WIDTH: usize = 8usize

§

type Reg = N

§

impl<N> BaseWriteableRegister<u8> for WriteOnly8C8B32<N>
where N: RegisterLongName,

§

const REG_WIDTH: usize = 8usize

§

type Reg = N

§

impl<N> BaseWriteableRegister<u8> for WriteOnly8C32B32<N>
where N: RegisterLongName,

§

const REG_WIDTH: usize = 8usize

§

type Reg = N

§

impl<N> BaseWriteableRegister<u16> for ReadWrite16C8B32<N>
where N: RegisterLongName,

§

const REG_WIDTH: usize = 16usize

§

type Reg = N

§

impl<N> BaseWriteableRegister<u16> for ReadWrite16C32B32<N>
where N: RegisterLongName,

§

const REG_WIDTH: usize = 16usize

§

type Reg = N

§

impl<N> BaseWriteableRegister<u16> for WriteOnly16C8B32<N>
where N: RegisterLongName,

§

const REG_WIDTH: usize = 16usize

§

type Reg = N

§

impl<N> BaseWriteableRegister<u16> for WriteOnly16C32B32<N>
where N: RegisterLongName,

§

const REG_WIDTH: usize = 16usize

§

type Reg = N

§

impl<N> BaseWriteableRegister<u32> for ReadWrite32C8B32<N>
where N: RegisterLongName,

§

const REG_WIDTH: usize = 32usize

§

type Reg = N

§

impl<N> BaseWriteableRegister<u32> for ReadWrite32C32B32<N>
where N: RegisterLongName,

§

const REG_WIDTH: usize = 32usize

§

type Reg = N

§

impl<N> BaseWriteableRegister<u32> for WriteOnly32C8B32<N>
where N: RegisterLongName,

§

const REG_WIDTH: usize = 32usize

§

type Reg = N

§

impl<N> BaseWriteableRegister<u32> for WriteOnly32C32B32<N>
where N: RegisterLongName,

§

const REG_WIDTH: usize = 32usize

§

type Reg = N

§

impl<N> BaseWriteableRegister<u64> for ReadWrite64C8B32<N>
where N: RegisterLongName,

§

const REG_WIDTH: usize = 64usize

§

type Reg = N

§

impl<N> BaseWriteableRegister<u64> for ReadWrite64C32B32<N>
where N: RegisterLongName,

§

const REG_WIDTH: usize = 64usize

§

type Reg = N

§

impl<N> BaseWriteableRegister<u64> for WriteOnly64C8B32<N>
where N: RegisterLongName,

§

const REG_WIDTH: usize = 64usize

§

type Reg = N

§

impl<N> BaseWriteableRegister<u64> for WriteOnly64C32B32<N>
where N: RegisterLongName,

§

const REG_WIDTH: usize = 64usize

§

type Reg = N

§

impl<T, N, R> BaseWriteableRegister<T> for ReadWriteRegWrapper<'_, T, N, R>
where T: UIntLike, N: RegisterLongName, R: BaseReadableRegister<T> + BaseWriteableRegister<T>,

§

const REG_WIDTH: usize

§

type Reg = N

§

impl<T, N, R> BaseWriteableRegister<T> for WriteRegWrapper<'_, T, N, R>
where T: UIntLike, N: RegisterLongName, R: BaseWriteableRegister<T>,

§

const REG_WIDTH: usize = R::REG_WIDTH

§

type Reg = N