#[derive(Tree, Default)] pub struct Settings { lcd_size: [u8; 2], #[tree(depth=3)] msgs: [Option; 12] } const fn const_packed(u: usize) -> Packed { match Packed::new(u) { Some(p) => p, None => panic!("non-zero key required") } } pub const SIZE: Packed = const_packed(0b01); pub const MSG_0: Packed = const_packed(0b1_0000_1); pub const MSG_1: Packed = const_packed(0b1_0001_1);