pub trait Transport {
type Filters: Default + Debug;
type Info: Debug;
type Device: NonSendExchange;
// Required methods
async fn list(
&mut self,
filters: Self::Filters,
) -> Result<Vec<LedgerInfo>, Error>;
async fn connect(&mut self, info: Self::Info) -> Result<Self::Device, Error>;
}Expand description
Transport trait provides an abstract interface for transport implementations.
Required Associated Types§
Sourcetype Device: NonSendExchange
type Device: NonSendExchange
Device handle for interacting with the device
Required Methods§
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.
Implementations on Foreign Types§
Source§impl<T: Transport + Send> Transport for &mut T
Blanket Transport implementation for references types
impl<T: Transport + Send> Transport for &mut T
Blanket Transport implementation for references types
type Filters = <T as Transport>::Filters
type Info = <T as Transport>::Info
type Device = <T as Transport>::Device
async fn list( &mut self, filters: Self::Filters, ) -> Result<Vec<LedgerInfo>, Error>
async fn connect(&mut self, info: Self::Info) -> Result<Self::Device, Error>
Implementors§
Source§impl Transport for LedgerProvider
Transport implementation for high-level LedgerProvider
impl Transport for LedgerProvider
Transport implementation for high-level LedgerProvider
Source§impl Transport for BleTransport
Transport implementation for BleTransport
impl Transport for BleTransport
Transport implementation for BleTransport