pub struct KeyScanner<'c, I, O, M, const INPUT_N: usize, const OUTPUT_N: usize, const PS: usize>{ /* private fields */ }Implementations§
Source§impl<'c, I, O, M, const INPUT_N: usize, const OUTPUT_N: usize, const PS: usize> KeyScanner<'c, I, O, M, INPUT_N, OUTPUT_N, PS>
impl<'c, I, O, M, const INPUT_N: usize, const OUTPUT_N: usize, const PS: usize> KeyScanner<'c, I, O, M, INPUT_N, OUTPUT_N, PS>
pub fn new( input_pins: [I; INPUT_N], output_pins: [O; OUTPUT_N], channel: &'c KeyScannerChannel<M, PS>, ) -> KeyScanner<'c, I, O, M, INPUT_N, OUTPUT_N, PS>
pub async fn run<const ROW_IS_OUTPUT: bool, const DEBOUNCE_TUNE: usize>( &mut self, )
pub async fn wait_for_key(&mut self) -> bool
pub async fn scan<const ROW_IS_OUTPUT: bool, const DEBOUNCE_TUNE: usize>( &mut self, )
Auto Trait Implementations§
impl<'c, I, O, M, const INPUT_N: usize, const OUTPUT_N: usize, const PS: usize> Freeze for KeyScanner<'c, I, O, M, INPUT_N, OUTPUT_N, PS>
impl<'c, I, O, M, const INPUT_N: usize, const OUTPUT_N: usize, const PS: usize> !RefUnwindSafe for KeyScanner<'c, I, O, M, INPUT_N, OUTPUT_N, PS>
impl<'c, I, O, M, const INPUT_N: usize, const OUTPUT_N: usize, const PS: usize> Send for KeyScanner<'c, I, O, M, INPUT_N, OUTPUT_N, PS>
impl<'c, I, O, M, const INPUT_N: usize, const OUTPUT_N: usize, const PS: usize> Sync for KeyScanner<'c, I, O, M, INPUT_N, OUTPUT_N, PS>
impl<'c, I, O, M, const INPUT_N: usize, const OUTPUT_N: usize, const PS: usize> Unpin for KeyScanner<'c, I, O, M, INPUT_N, OUTPUT_N, PS>
impl<'c, I, O, M, const INPUT_N: usize, const OUTPUT_N: usize, const PS: usize> !UnwindSafe for KeyScanner<'c, I, O, M, INPUT_N, OUTPUT_N, PS>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more