#[repr(u8)]pub enum Error {
Show 14 variants
NoPinRS = 0,
NoPinEN = 1,
NoPinRW = 2,
NoPinD0 = 3,
NoPinD1 = 4,
NoPinD2 = 5,
NoPinD3 = 6,
NoPinD4 = 7,
NoPinD5 = 8,
NoPinD6 = 9,
NoPinD7 = 10,
None = 11,
InvalidMode = 12,
InvalidCode = 13,
}Expand description
Error type for LcdDisplay, returned by LcdDisplay::error
LcdDisplay uses an internal error code rather than the standard rust Result pattern because there are only two places in LcdDisplay where an error is returned. Unfortunately, every public function invokes one of those places (which has an Infallible error type, no less) and would be forced to return a result or call unwrap/expect.
This led to a cluttered API in which users had to handle error conditions when calling functions like clear and home. An internal error code which could mostly be ignored except when debugging seemed like a better option.
Variants§
NoPinRS = 0
No pin RS
NoPinEN = 1
No pin EN
NoPinRW = 2
No pin RW
NoPinD0 = 3
No pin D0
NoPinD1 = 4
No pin D1
NoPinD2 = 5
No pin D2
NoPinD3 = 6
No pin D3
NoPinD4 = 7
No pin D4
NoPinD5 = 8
No pin D5
NoPinD6 = 9
No pin D6
NoPinD7 = 10
No pin D7
None = 11
No error
InvalidMode = 12
Bus mode is invalid or not set
InvalidCode = 13
Invalid conversion from u8 to Error