ValidAddress

Trait ValidAddress 

Source
pub trait ValidAddress:
    Into<u16>
    + AddressMode
    + AddressMode
    + Copy {
    const BIT_ADDR_M: IC_10BITADDR_MASTER_A;
    const BIT_ADDR_S: IC_10BITADDR_SLAVE_A;

    // Required method
    fn is_valid(self) -> Result<(), Error>;
}
Expand description

Marks valid/supported address types

Required Associated Constants§

Source

const BIT_ADDR_M: IC_10BITADDR_MASTER_A

Variant for the IC_CON.10bitaddr_master field

Source

const BIT_ADDR_S: IC_10BITADDR_SLAVE_A

Variant for the IC_CON.10bitaddr_slave field

Required Methods§

Source

fn is_valid(self) -> Result<(), Error>

Validates the address against address ranges supported by the hardware.

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.

Implementations on Foreign Types§

Source§

impl ValidAddress for u8

Source§

const BIT_ADDR_M: IC_10BITADDR_MASTER_A = IC_10BITADDR_MASTER_A::ADDR_7BITS

Source§

const BIT_ADDR_S: IC_10BITADDR_SLAVE_A = IC_10BITADDR_SLAVE_A::ADDR_7BITS

Source§

fn is_valid(self) -> Result<(), Error>

Source§

impl ValidAddress for u16

Source§

const BIT_ADDR_M: IC_10BITADDR_MASTER_A = IC_10BITADDR_MASTER_A::ADDR_10BITS

Source§

const BIT_ADDR_S: IC_10BITADDR_SLAVE_A = IC_10BITADDR_SLAVE_A::ADDR_10BITS

Source§

fn is_valid(self) -> Result<(), Error>

Implementors§