Trait Synth

Source
pub trait Synth:
    Default
    + Copy
    + PartialEq
    + Debug {
    const BITS: usize;

    // Required methods
    fn descriptor() -> TypeDescriptor;
    fn vcd(self) -> VCDValue;
    fn verilog(self) -> VerilogLiteral;

    // Provided method
    fn bits(self) -> usize { ... }
}

Required Associated Constants§

Required Methods§

Source

fn descriptor() -> TypeDescriptor

Source

fn vcd(self) -> VCDValue

Source

fn verilog(self) -> VerilogLiteral

Provided Methods§

Source

fn bits(self) -> usize

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 Synth for BankState

Source§

const BITS: usize = 4usize

Source§

fn descriptor() -> TypeDescriptor

Source§

fn vcd(self) -> VCDValue

Source§

fn verilog(self) -> VerilogLiteral

Source§

impl Synth for I2CControllerCmd

Source§

const BITS: usize = 3usize

Source§

fn descriptor() -> TypeDescriptor

Source§

fn vcd(self) -> VCDValue

Source§

fn verilog(self) -> VerilogLiteral

Source§

impl Synth for I2CDriverCmd

Source§

const BITS: usize = 3usize

Source§

fn descriptor() -> TypeDescriptor

Source§

fn vcd(self) -> VCDValue

Source§

fn verilog(self) -> VerilogLiteral

Source§

impl Synth for bool

Source§

const BITS: usize = 1usize

Source§

fn descriptor() -> TypeDescriptor

Source§

fn vcd(self) -> VCDValue

Source§

fn verilog(self) -> VerilogLiteral

Implementors§

Source§

impl Synth for SDRAMCommand

Source§

const BITS: usize = 3usize

Source§

impl Synth for Clock

Source§

const BITS: usize = 1usize

Source§

impl<const N: usize> Synth for Bits<N>

Source§

const BITS: usize = N

Source§

impl<const N: usize> Synth for Signed<N>

Source§

const BITS: usize = N