pub struct Pads<S, I, RX = NoneT, TX = NoneT, RTS = NoneT, CTS = NoneT>where
    S: Sercom,
    I: IoSet,
    RX: OptionalPad,
    TX: OptionalPad,
    RTS: OptionalPad,
    CTS: OptionalPad,{ /* private fields */ }Expand description
Container for a set of SERCOM Pads
See the module-level documentation for more
details on specifying a Pads type and creating instances.
Implementations
sourceimpl<S, I, RX, TX, RTS, CTS> Pads<S, I, RX, TX, RTS, CTS>where
    S: Sercom,
    I: IoSet,
    RX: OptionalPad,
    TX: OptionalPad,
    RTS: OptionalPad,
    CTS: OptionalPad,
 
impl<S, I, RX, TX, RTS, CTS> Pads<S, I, RX, TX, RTS, CTS>where
    S: Sercom,
    I: IoSet,
    RX: OptionalPad,
    TX: OptionalPad,
    RTS: OptionalPad,
    CTS: OptionalPad,
sourcepub fn rx<Id>(
    self,
    pin: impl AnyPin<Id = Id>
) -> Pads<S, I, Pad<S, Id>, TX, RTS, CTS>where
    Id: GetPad<S>,
    Pad<S, Id>: InIoSet<I>,
 
pub fn rx<Id>(
    self,
    pin: impl AnyPin<Id = Id>
) -> Pads<S, I, Pad<S, Id>, TX, RTS, CTS>where
    Id: GetPad<S>,
    Pad<S, Id>: InIoSet<I>,
Set the RX Pad
sourcepub fn tx<Id>(
    self,
    pin: impl AnyPin<Id = Id>
) -> Pads<S, I, RX, Pad<S, Id>, RTS, CTS>where
    Id: GetPad<S>,
    Pad<S, Id>: InIoSet<I>,
 
pub fn tx<Id>(
    self,
    pin: impl AnyPin<Id = Id>
) -> Pads<S, I, RX, Pad<S, Id>, RTS, CTS>where
    Id: GetPad<S>,
    Pad<S, Id>: InIoSet<I>,
Set the TX Pad
sourcepub fn rts<Id>(
    self,
    pin: impl AnyPin<Id = Id>
) -> Pads<S, I, RX, TX, Pad<S, Id>, CTS>where
    Id: GetPad<S>,
    Pad<S, Id>: InIoSet<I>,
 
pub fn rts<Id>(
    self,
    pin: impl AnyPin<Id = Id>
) -> Pads<S, I, RX, TX, Pad<S, Id>, CTS>where
    Id: GetPad<S>,
    Pad<S, Id>: InIoSet<I>,
sourcepub fn cts<Id>(
    self,
    pin: impl AnyPin<Id = Id>
) -> Pads<S, I, RX, TX, RTS, Pad<S, Id>>where
    Id: GetPad<S>,
    Pad<S, Id>: InIoSet<I>,
 
pub fn cts<Id>(
    self,
    pin: impl AnyPin<Id = Id>
) -> Pads<S, I, RX, TX, RTS, Pad<S, Id>>where
    Id: GetPad<S>,
    Pad<S, Id>: InIoSet<I>,
sourcepub fn free(self) -> (RX, TX, RTS, CTS)
 
pub fn free(self) -> (RX, TX, RTS, CTS)
Trait Implementations
sourceimpl<S, I, RX, TX, RTS, CTS> PadSet for Pads<S, I, RX, TX, RTS, CTS>where
    S: Sercom,
    I: IoSet,
    RX: OptionalPad,
    TX: OptionalPad,
    RTS: OptionalPad,
    CTS: OptionalPad,
 
impl<S, I, RX, TX, RTS, CTS> PadSet for Pads<S, I, RX, TX, RTS, CTS>where
    S: Sercom,
    I: IoSet,
    RX: OptionalPad,
    TX: OptionalPad,
    RTS: OptionalPad,
    CTS: OptionalPad,
sourceimpl<S, I, RX, TX, RTS, CTS> RxpoTxpo for Pads<S, I, RX, TX, RTS, CTS>where
    S: Sercom,
    I: IoSet,
    RX: OptionalPad,
    TX: OptionalPad,
    RTS: OptionalPad,
    CTS: OptionalPad,
    (RX::PadNum, TX::PadNum, RTS::PadNum, CTS::PadNum): RxpoTxpo,
 
impl<S, I, RX, TX, RTS, CTS> RxpoTxpo for Pads<S, I, RX, TX, RTS, CTS>where
    S: Sercom,
    I: IoSet,
    RX: OptionalPad,
    TX: OptionalPad,
    RTS: OptionalPad,
    CTS: OptionalPad,
    (RX::PadNum, TX::PadNum, RTS::PadNum, CTS::PadNum): RxpoTxpo,
Lift the implementations of RxpoTxpo from four-tuples of
OptionalPadNums to the corresponding Pads types.
sourceimpl<S, I, TX, CTS> ValidPads for Pads<S, I, NoneT, TX, NoneT, CTS>where
    S: Sercom,
    I: IoSet,
    TX: SomePad,
    CTS: OptionalPad,
    Self: PadSet + RxpoTxpo,
 
impl<S, I, TX, CTS> ValidPads for Pads<S, I, NoneT, TX, NoneT, CTS>where
    S: Sercom,
    I: IoSet,
    TX: SomePad,
    CTS: OptionalPad,
    Self: PadSet + RxpoTxpo,
type Capability = Tx
sourceimpl<S, I, RX, RTS> ValidPads for Pads<S, I, RX, NoneT, RTS, NoneT>where
    S: Sercom,
    I: IoSet,
    RX: SomePad,
    RTS: OptionalPad,
    Self: PadSet + RxpoTxpo,
 
impl<S, I, RX, RTS> ValidPads for Pads<S, I, RX, NoneT, RTS, NoneT>where
    S: Sercom,
    I: IoSet,
    RX: SomePad,
    RTS: OptionalPad,
    Self: PadSet + RxpoTxpo,
type Capability = Rx
sourceimpl<S, I, RX, TX, RTS, CTS> ValidPads for Pads<S, I, RX, TX, RTS, CTS>where
    S: Sercom,
    I: IoSet,
    RX: SomePad,
    TX: SomePad,
    RTS: OptionalPad,
    CTS: OptionalPad,
    Self: PadSet + RxpoTxpo,
 
impl<S, I, RX, TX, RTS, CTS> ValidPads for Pads<S, I, RX, TX, RTS, CTS>where
    S: Sercom,
    I: IoSet,
    RX: SomePad,
    TX: SomePad,
    RTS: OptionalPad,
    CTS: OptionalPad,
    Self: PadSet + RxpoTxpo,
type Capability = Duplex
Auto Trait Implementations
impl<S, I, RX, TX, RTS, CTS> RefUnwindSafe for Pads<S, I, RX, TX, RTS, CTS>where
    CTS: RefUnwindSafe,
    I: RefUnwindSafe,
    RTS: RefUnwindSafe,
    RX: RefUnwindSafe,
    S: RefUnwindSafe,
    TX: RefUnwindSafe,
impl<S, I, RX, TX, RTS, CTS> Send for Pads<S, I, RX, TX, RTS, CTS>where
    CTS: Send,
    I: Send,
    RTS: Send,
    RX: Send,
    S: Send,
    TX: Send,
impl<S, I, RX, TX, RTS, CTS> Sync for Pads<S, I, RX, TX, RTS, CTS>where
    CTS: Sync,
    I: Sync,
    RTS: Sync,
    RX: Sync,
    S: Sync,
    TX: Sync,
impl<S, I, RX, TX, RTS, CTS> Unpin for Pads<S, I, RX, TX, RTS, CTS>where
    CTS: Unpin,
    I: Unpin,
    RTS: Unpin,
    RX: Unpin,
    S: Unpin,
    TX: Unpin,
impl<S, I, RX, TX, RTS, CTS> UnwindSafe for Pads<S, I, RX, TX, RTS, CTS>where
    CTS: UnwindSafe,
    I: UnwindSafe,
    RTS: UnwindSafe,
    RX: UnwindSafe,
    S: UnwindSafe,
    TX: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
    T: ?Sized,
 
impl<T> BorrowMut<T> for Twhere
    T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
 
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more