ariel_os::reexports::embassy_usb

Struct InterfaceBuilder

pub struct InterfaceBuilder<'a, 'd, D>
where D: Driver<'d>,
{ /* private fields */ }
Expand description

Interface builder.

Implementations§

§

impl<'a, 'd, D> InterfaceBuilder<'a, 'd, D>
where D: Driver<'d>,

pub const fn interface_number(&self) -> InterfaceNumber

Get the interface number.

pub fn string(&mut self) -> StringIndex

Allocates a new string index.

pub fn alt_setting( &mut self, class: u8, subclass: u8, protocol: u8, interface_string: Option<StringIndex>, ) -> InterfaceAltBuilder<'_, 'd, D>

Add an alternate setting to the interface and write its descriptor.

Alternate setting numbers are guaranteed to be allocated consecutively, starting from 0.

The first alternate setting, with number 0, is the default one.

Auto Trait Implementations§

§

impl<'a, 'd, D> Freeze for InterfaceBuilder<'a, 'd, D>

§

impl<'a, 'd, D> !RefUnwindSafe for InterfaceBuilder<'a, 'd, D>

§

impl<'a, 'd, D> !Send for InterfaceBuilder<'a, 'd, D>

§

impl<'a, 'd, D> !Sync for InterfaceBuilder<'a, 'd, D>

§

impl<'a, 'd, D> Unpin for InterfaceBuilder<'a, 'd, D>

§

impl<'a, 'd, D> !UnwindSafe for InterfaceBuilder<'a, 'd, D>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T, W> HasTypeWitness<W> for T
where W: MakeTypeWitness<Arg = T>, T: ?Sized,

§

const WITNESS: W = W::MAKE

A constant of the type witness
§

impl<T> Identity for T
where T: ?Sized,

§

const TYPE_EQ: TypeEq<T, <T as Identity>::Type> = TypeEq::NEW

Proof that Self is the same type as Self::Type, provides methods for casting between Self and Self::Type.
§

type Type = T

The same type as Self, used to emulate type equality bounds (T == U) with associated type equality constraints (T: Identity<Type = U>).
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V