embassy-net

Crates

git

Versions

default

Flavors

embassy_net::tcp::client

Struct TcpClient

Source
pub struct TcpClient<'d, const N: usize, const TX_SZ: usize = 1024, const RX_SZ: usize = 1024> { /* private fields */ }
Expand description

TCP client connection pool compatible with embedded-nal-async traits.

The pool is capable of managing up to N concurrent connections with tx and rx buffers according to TX_SZ and RX_SZ.

Implementations§

Source§

impl<'d, const N: usize, const TX_SZ: usize, const RX_SZ: usize> TcpClient<'d, N, TX_SZ, RX_SZ>

Source

pub fn new(stack: Stack<'d>, state: &'d TcpClientState<N, TX_SZ, RX_SZ>) -> Self

Create a new TcpClient.

Source

pub fn set_timeout(&mut self, timeout: Option<Duration>)

Set the timeout for each socket created by this TcpClient.

If the timeout is set, the socket will be closed if no data is received for the specified duration.

Trait Implementations§

Source§

impl<'d, const N: usize, const TX_SZ: usize, const RX_SZ: usize> TcpConnect for TcpClient<'d, N, TX_SZ, RX_SZ>

Source§

type Error = Error

Error type returned on connect failure.
Source§

type Connection<'m> = TcpConnection<'m, N, TX_SZ, RX_SZ> where Self: 'm

Type holding state of a TCP connection. Should close the connection when dropped.
Source§

async fn connect<'a>( &'a self, remote: SocketAddr, ) -> Result<Self::Connection<'a>, Self::Error>

Connect to the given remote host and port. Read more

Auto Trait Implementations§

§

impl<'d, const N: usize, const TX_SZ: usize, const RX_SZ: usize> Freeze for TcpClient<'d, N, TX_SZ, RX_SZ>

§

impl<'d, const N: usize, const TX_SZ: usize = 1024, const RX_SZ: usize = 1024> !RefUnwindSafe for TcpClient<'d, N, TX_SZ, RX_SZ>

§

impl<'d, const N: usize, const TX_SZ: usize = 1024, const RX_SZ: usize = 1024> !Send for TcpClient<'d, N, TX_SZ, RX_SZ>

§

impl<'d, const N: usize, const TX_SZ: usize = 1024, const RX_SZ: usize = 1024> !Sync for TcpClient<'d, N, TX_SZ, RX_SZ>

§

impl<'d, const N: usize, const TX_SZ: usize, const RX_SZ: usize> Unpin for TcpClient<'d, N, TX_SZ, RX_SZ>

§

impl<'d, const N: usize, const TX_SZ: usize = 1024, const RX_SZ: usize = 1024> !UnwindSafe for TcpClient<'d, N, TX_SZ, RX_SZ>

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.