adds command registration
This commit is contained in:
@@ -5,17 +5,18 @@ use std::time::Instant;
|
||||
pub trait PinDevice {
|
||||
fn set_pin(&self, pin: u8, value: PinState, valid_until: Instant, priority: u8);
|
||||
|
||||
fn new_pinset_callback(self) -> impl Fn(ValidPriorityCommand<SetPin>)
|
||||
fn new_pinset_callback<'a>(&self) -> impl Fn(ValidPriorityCommand<SetPin>) + 'a
|
||||
where
|
||||
Self: Sized,
|
||||
Self: Sized + Clone + 'a,
|
||||
{
|
||||
let this = self.clone();
|
||||
move |cmd| {
|
||||
self.set_pin(
|
||||
this.set_pin(
|
||||
cmd.pin,
|
||||
cmd.value.into(),
|
||||
cmd.get_valid_until_instant(),
|
||||
cmd.priority,
|
||||
)
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user