pub trait Light {
// Required methods
fn set<'e, 'life0, 'async_trait, P>(
device: &'life0 Self,
protocol: &'e P,
option: &'e LightOption,
) -> Pin<Box<dyn Future<Output = Result<(), BluetoothError>> + Send + 'async_trait>>
where P: 'async_trait + Protocol + Send + Sync,
Self: 'async_trait,
'e: 'async_trait,
'life0: 'async_trait;
fn turn_on<'e, 'life0, 'async_trait, P>(
&'life0 self,
protocol: &'e P,
) -> Pin<Box<dyn Future<Output = Result<(), BluetoothError>> + Send + 'async_trait>>
where P: 'async_trait + Protocol + Send + Sync,
Self: 'async_trait,
'e: 'async_trait,
'life0: 'async_trait;
fn turn_off<'e, 'life0, 'async_trait, P>(
&'life0 self,
protocol: &'e P,
) -> Pin<Box<dyn Future<Output = Result<(), BluetoothError>> + Send + 'async_trait>>
where P: 'async_trait + Protocol + Send + Sync,
Self: 'async_trait,
'e: 'async_trait,
'life0: 'async_trait;
}Required Methods§
fn set<'e, 'life0, 'async_trait, P>( device: &'life0 Self, protocol: &'e P, option: &'e LightOption, ) -> Pin<Box<dyn Future<Output = Result<(), BluetoothError>> + Send + 'async_trait>>
fn turn_on<'e, 'life0, 'async_trait, P>( &'life0 self, protocol: &'e P, ) -> Pin<Box<dyn Future<Output = Result<(), BluetoothError>> + Send + 'async_trait>>
fn turn_off<'e, 'life0, 'async_trait, P>( &'life0 self, protocol: &'e P, ) -> Pin<Box<dyn Future<Output = Result<(), BluetoothError>> + Send + 'async_trait>>
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.