pub struct CommandOperation<'i, Interface, AddressType: Copy, InFieldSet, OutFieldSet> { /* private fields */ }Expand description
Intermediate type for doing command operations
Implementations§
Source§impl<Interface, AddressType: Copy> CommandOperation<'_, Interface, AddressType, (), ()>where
Interface: CommandInterface<AddressType = AddressType>,
Simple command
impl<Interface, AddressType: Copy> CommandOperation<'_, Interface, AddressType, (), ()>where
Interface: CommandInterface<AddressType = AddressType>,
Simple command
Source§impl<Interface, AddressType: Copy, InFieldSet: FieldSet> CommandOperation<'_, Interface, AddressType, InFieldSet, ()>where
Interface: CommandInterface<AddressType = AddressType>,
Only input
impl<Interface, AddressType: Copy, InFieldSet: FieldSet> CommandOperation<'_, Interface, AddressType, InFieldSet, ()>where
Interface: CommandInterface<AddressType = AddressType>,
Only input
Source§impl<Interface, AddressType: Copy, OutFieldSet: FieldSet> CommandOperation<'_, Interface, AddressType, (), OutFieldSet>where
Interface: CommandInterface<AddressType = AddressType>,
Only output
impl<Interface, AddressType: Copy, OutFieldSet: FieldSet> CommandOperation<'_, Interface, AddressType, (), OutFieldSet>where
Interface: CommandInterface<AddressType = AddressType>,
Only output
Source§impl<Interface, AddressType: Copy, InFieldSet: FieldSet, OutFieldSet: FieldSet> CommandOperation<'_, Interface, AddressType, InFieldSet, OutFieldSet>where
Interface: CommandInterface<AddressType = AddressType>,
Input and output
impl<Interface, AddressType: Copy, InFieldSet: FieldSet, OutFieldSet: FieldSet> CommandOperation<'_, Interface, AddressType, InFieldSet, OutFieldSet>where
Interface: CommandInterface<AddressType = AddressType>,
Input and output
Source§impl<Interface, AddressType: Copy> CommandOperation<'_, Interface, AddressType, (), ()>where
Interface: AsyncCommandInterface<AddressType = AddressType>,
Simple command async
impl<Interface, AddressType: Copy> CommandOperation<'_, Interface, AddressType, (), ()>where
Interface: AsyncCommandInterface<AddressType = AddressType>,
Simple command async
Sourcepub async fn dispatch_async(self) -> Result<(), Interface::Error>
pub async fn dispatch_async(self) -> Result<(), Interface::Error>
Dispatch the command to the device
Source§impl<Interface, AddressType: Copy, InFieldSet: FieldSet> CommandOperation<'_, Interface, AddressType, InFieldSet, ()>where
Interface: AsyncCommandInterface<AddressType = AddressType>,
Only input async
impl<Interface, AddressType: Copy, InFieldSet: FieldSet> CommandOperation<'_, Interface, AddressType, InFieldSet, ()>where
Interface: AsyncCommandInterface<AddressType = AddressType>,
Only input async
Sourcepub async fn dispatch_async(
self,
f: impl FnOnce(&mut InFieldSet),
) -> Result<(), Interface::Error>
pub async fn dispatch_async( self, f: impl FnOnce(&mut InFieldSet), ) -> Result<(), Interface::Error>
Dispatch the command to the device
Source§impl<Interface, AddressType: Copy, OutFieldSet: FieldSet> CommandOperation<'_, Interface, AddressType, (), OutFieldSet>where
Interface: AsyncCommandInterface<AddressType = AddressType>,
Only output async
impl<Interface, AddressType: Copy, OutFieldSet: FieldSet> CommandOperation<'_, Interface, AddressType, (), OutFieldSet>where
Interface: AsyncCommandInterface<AddressType = AddressType>,
Only output async
Sourcepub async fn dispatch_async(self) -> Result<OutFieldSet, Interface::Error>
pub async fn dispatch_async(self) -> Result<OutFieldSet, Interface::Error>
Dispatch the command to the device
Source§impl<Interface, AddressType: Copy, InFieldSet: FieldSet, OutFieldSet: FieldSet> CommandOperation<'_, Interface, AddressType, InFieldSet, OutFieldSet>where
Interface: AsyncCommandInterface<AddressType = AddressType>,
Input and output async
impl<Interface, AddressType: Copy, InFieldSet: FieldSet, OutFieldSet: FieldSet> CommandOperation<'_, Interface, AddressType, InFieldSet, OutFieldSet>where
Interface: AsyncCommandInterface<AddressType = AddressType>,
Input and output async
Sourcepub async fn dispatch_async(
self,
f: impl FnOnce(&mut InFieldSet),
) -> Result<OutFieldSet, Interface::Error>
pub async fn dispatch_async( self, f: impl FnOnce(&mut InFieldSet), ) -> Result<OutFieldSet, Interface::Error>
Dispatch the command to the device