Skip to main content

DeviceHList

Trait DeviceHList 

Source
pub trait DeviceHList<'a>: ToMut<'a> {
    // Required methods
    fn get(&mut self, id: u8) -> Option<&mut dyn InterfaceClass<'a>>;
    fn reset(&mut self);
    fn write_descriptors(
        &mut self,
        writer: &mut DescriptorWriter<'_>,
    ) -> Result<()>;
    fn get_string(
        &mut self,
        index: StringIndex,
        lang_id: LangID,
    ) -> Option<&'a str>;
    fn tick(&mut self) -> Result<(), UsbHidError>;
}

Required Methods§

Source

fn get(&mut self, id: u8) -> Option<&mut dyn InterfaceClass<'a>>

Source

fn reset(&mut self)

Source

fn write_descriptors(&mut self, writer: &mut DescriptorWriter<'_>) -> Result<()>

Source

fn get_string(&mut self, index: StringIndex, lang_id: LangID) -> Option<&'a str>

Source

fn tick(&mut self) -> Result<(), UsbHidError>

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl<'a, Head: DeviceClass<'a> + 'a, Tail: DeviceHList<'a>> DeviceHList<'a> for HCons<Head, Tail>

Source§

fn get(&mut self, id: u8) -> Option<&mut dyn InterfaceClass<'a>>

Source§

fn reset(&mut self)

Source§

fn write_descriptors(&mut self, writer: &mut DescriptorWriter<'_>) -> Result<()>

Source§

fn get_string(&mut self, index: StringIndex, lang_id: LangID) -> Option<&'a str>

Source§

fn tick(&mut self) -> Result<(), UsbHidError>

Source§

impl<'a> DeviceHList<'a> for HNil

Source§

fn get(&mut self, _: u8) -> Option<&mut dyn InterfaceClass<'a>>

Source§

fn reset(&mut self)

Source§

fn write_descriptors(&mut self, _: &mut DescriptorWriter<'_>) -> Result<()>

Source§

fn get_string(&mut self, _: StringIndex, _: LangID) -> Option<&'a str>

Source§

fn tick(&mut self) -> Result<(), UsbHidError>

Implementors§