Function ndless::input::iter_keys

source ·
pub fn iter_keys() -> impl Iterator<Item = Key> + 'static
Expand description

A more efficient way to get keys being pressed than get_keys, as iter_keys does not allocate.

However, it must be used immediately, as each iteration of the loop checks if the key is being pressed at that time. For example:

use ndless::prelude::*;
use ndless::input::iter_keys;
for key in iter_keys() {
    println!("Key {:?} is being pressed.", key);
}

Additionally, it may be used like any other Iterator in Rust:

// Print all keys except escape
use ndless::prelude::*;
use ndless::input::{iter_keys, Key};
iter_keys()
    .filter(|key| key != Key::Esc)
    .for_each(|key| println!("Key {:?} is being pressed.", key));