pub trait AnySpi: Is<Type = SpecificSpi<Self>> {
type Sercom: Sercom;
type Pads: ValidPads;
type Capability: Capability;
type OpMode: OpMode;
type Size: Size;
type Word: 'static;
type Config: ValidConfig<Sercom = Self::Sercom>;
}
Expand description
Type class for all possible Spi
types
This trait uses the AnyKind
trait pattern to create a type class for
Spi
types. See the AnyKind
documentation for more details on the
pattern.
In addition to the normal, AnyKind
associated types. This trait also
copies the Sercom
, Pads
, Capability
, OpMode
, Size
and
Word
types, to make it easier to apply bounds to these types at the next
level of abstraction.