minigene/systems/
input_driver.rs

1use crate::*;
2
3/// Transforms `char` input events into the desired event type using a keybindings map.
4pub fn input_driver<E: Clone>(
5    keymap: &HashMap<char, E>,
6    inputs: &Vec<char>,
7    events: &mut Vec<E>,
8) -> SystemResult {
9    for i in inputs.iter() {
10        if let Some(e) = keymap.get(i) {
11            events.push(e.clone());
12        }
13    }
14    Ok(())
15}