#![allow(non_snake_case)]
use macro_rules_attribute::apply;
use super::{KeyAction, KeyCode};
use crate::macros::common_derive;
#[apply(common_derive)]
#[derive(Copy, strum::EnumIter, strum::IntoStaticStr)]
pub enum LayerOp {
Momentary(u8),
Toggle(u8),
}
pub const fn MO(n: u8) -> KeyAction {
KeyAction::Normal(KeyCode::Layer(LayerOp::Momentary(n)))
}
pub const fn TG(n: u8) -> KeyAction {
KeyAction::Normal(KeyCode::Layer(LayerOp::Toggle(n)))
}