trouble-host

Crates

git

Versions

default

Flavors

Struct L2capChannelWriter

Source
pub struct L2capChannelWriter<'d, P: PacketPool> { /* private fields */ }
Expand description

Handle representing an L2CAP channel write endpoint.

Implementations§

Source§

impl<'d, P: PacketPool> L2capChannelWriter<'d, P>

Source

pub fn disconnect(&mut self)

Disconnect this channel.

Source

pub async fn send<T: Controller>( &mut self, stack: &Stack<'_, T, P>, buf: &[u8], ) -> Result<(), BleHostError<T::Error>>

Send the provided buffer over this l2cap channel.

The buffer must be equal to or smaller than the MTU agreed for the channel.

If the channel has been closed or the channel id is not valid, an error is returned. If there are no available credits to send, waits until more credits are available.

Source

pub fn try_send<T: Controller + Controller>( &mut self, stack: &Stack<'_, T, P>, buf: &[u8], ) -> Result<(), BleHostError<T::Error>>

Send the provided buffer over this l2cap channel.

The buffer must be equal to or smaller than the MTU agreed for the channel.

If the channel has been closed or the channel id is not valid, an error is returned. If there are no available credits to send, returns Error::Busy.

Source

pub fn channel_ref(&mut self) -> L2capChannelRef<'d, P>

Create a channel reference for the l2cap channel.

Trait Implementations§

Source§

impl<P: PacketPool> Drop for L2capChannelWriter<'_, P>

Source§

fn drop(&mut self)

Executes the destructor for this type. Read more
Source§

impl<P: PacketPool> Format for L2capChannelWriter<'_, P>

Source§

fn format(&self, f: Formatter<'_>)

Writes the defmt representation of self to fmt.

Auto Trait Implementations§

§

impl<'d, P> Freeze for L2capChannelWriter<'d, P>

§

impl<'d, P> !RefUnwindSafe for L2capChannelWriter<'d, P>

§

impl<'d, P> !Send for L2capChannelWriter<'d, P>

§

impl<'d, P> !Sync for L2capChannelWriter<'d, P>

§

impl<'d, P> Unpin for L2capChannelWriter<'d, P>

§

impl<'d, P> !UnwindSafe for L2capChannelWriter<'d, P>

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.

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, 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.