pub trait UsbAllocatable<'a, B: UsbBus> {
    type Allocated;

    // Required method
    fn allocate(self, usb_alloc: &'a UsbBusAllocator<B>) -> Self::Allocated;
}

Required Associated Types§

Required Methods§

source

fn allocate(self, usb_alloc: &'a UsbBusAllocator<B>) -> Self::Allocated

Implementations on Foreign Types§

source§

impl<'a, B, C, Tail> UsbAllocatable<'a, B> for HCons<C, Tail>where B: UsbBus + 'a, C: UsbAllocatable<'a, B>, Tail: UsbAllocatable<'a, B>,

§

type Allocated = HCons<<C as UsbAllocatable<'a, B>>::Allocated, <Tail as UsbAllocatable<'a, B>>::Allocated>

source§

fn allocate(self, usb_alloc: &'a UsbBusAllocator<B>) -> Self::Allocated

source§

impl<'a, B: UsbBus + 'a> UsbAllocatable<'a, B> for HNil

§

type Allocated = HNil

source§

fn allocate(self, _: &'a UsbBusAllocator<B>) -> Self::Allocated

Implementors§

source§

impl<'a, B, I, InnerConfig, Config> UsbAllocatable<'a, B> for WrappedInterfaceConfig<I, InnerConfig, Config>where B: UsbBus + 'a, InnerConfig: UsbAllocatable<'a, B>, I: WrappedInterface<'a, B, InnerConfig::Allocated, Config>, InnerConfig::Allocated: InterfaceClass<'a>,

§

type Allocated = I

source§

impl<'a, B, R> UsbAllocatable<'a, B> for ManagedInterfaceConfig<'a, R>where B: UsbBus + 'a, R: Copy + Eq,

§

type Allocated = ManagedInterface<'a, B, R>

source§

impl<'a, B: UsbBus + 'a> UsbAllocatable<'a, B> for RawInterfaceConfig<'a>