hd44780_controller/charset/
common.rs

1pub trait Charset {
2    fn char_to_code(&self, c: char) -> Option<u8>;
3}
4
5pub struct FallbackCharset<C: Charset, const FALLBACK_CODE: u8>(pub C);
6
7pub type BlankFallback<C> = FallbackCharset<C, b' '>;
8pub type QuestionFallback<C> = FallbackCharset<C, b'?'>;
9
10impl<C: Charset, const FALLBACK_CODE: u8> FallbackCharset<C, FALLBACK_CODE> {
11    pub fn char_to_code(&self, c: char) -> u8 {
12        self.0.char_to_code(c).unwrap_or(FALLBACK_CODE)
13    }
14}