use crate::{
MorseSignal::{Long as L, Short as S},
MORSE_DEFAULT_CHAR,
MorseCodeArray,
Character,
};
pub const DEFAULT_CHARACTER_SET_LENGTH: usize = 53;
pub type CharacterSet = &'static [Character];
#[cfg(not(feature = "utf8"))]
pub const DEFAULT_CHARACTER_SET: CharacterSet = b" ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890,?:-\"(=X.;/'_)+@";
#[cfg(feature = "utf8")]
pub const DEFAULT_CHARACTER_SET: CharacterSet = &[
' ',
'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S',
'T', 'U', 'V', 'W', 'X', 'Y', 'Z',
'1', '2', '3', '4', '5', '6', '7', '8', '9', '0',
',', '?', ':', '-', '"', '(', '=', 'X', '.', ';', '/', '\'', '_', ')', '+', '@',
];
pub type MorseCodeSet = &'static [MorseCodeArray];
pub const DEFAULT_MORSE_CODE_SET: MorseCodeSet =
&[
MORSE_DEFAULT_CHAR, [Some(S), Some(L), None, None, None, None], [Some(L), Some(S), Some(S), Some(S), None, None], [Some(L), Some(S), Some(L), Some(S), None, None], [Some(L), Some(S), Some(S), None, None, None], [Some(S), None, None, None, None, None], [Some(S), Some(S), Some(L), Some(S), None, None], [Some(L), Some(L), Some(S), None, None, None], [Some(S), Some(S), Some(S), Some(S), None, None], [Some(S), Some(S), None, None, None, None], [Some(S), Some(L), Some(L), Some(L), None, None], [Some(L), Some(S), Some(L), None, None, None], [Some(S), Some(L), Some(S), Some(S), None, None], [Some(L), Some(L), None, None, None, None], [Some(L), Some(S), None, None, None, None], [Some(L), Some(L), Some(L), None, None, None], [Some(S), Some(L), Some(L), Some(S), None, None], [Some(L), Some(L), Some(S), Some(L), None, None], [Some(S), Some(L), Some(S), None, None, None], [Some(S), Some(S), Some(S), None, None, None], [Some(L), None, None, None, None, None], [Some(S), Some(S), Some(L), None, None, None], [Some(S), Some(S), Some(S), Some(L), None, None], [Some(S), Some(L), Some(L), None, None, None], [Some(L), Some(S), Some(S), Some(L), None, None], [Some(L), Some(S), Some(L), Some(L), None, None], [Some(L), Some(L), Some(S), Some(S), None, None], [Some(S), Some(L), Some(L), Some(L), Some(L), None], [Some(S), Some(S), Some(L), Some(L), Some(L), None], [Some(S), Some(S), Some(S), Some(L), Some(L), None], [Some(S), Some(S), Some(S), Some(S), Some(L), None], [Some(S), Some(S), Some(S), Some(S), Some(S), None], [Some(L), Some(S), Some(S), Some(S), Some(S), None], [Some(L), Some(L), Some(S), Some(S), Some(S), None], [Some(L), Some(L), Some(L), Some(S), Some(S), None], [Some(L), Some(L), Some(L), Some(L), Some(S), None], [Some(L), Some(L), Some(L), Some(L), Some(L), None], [Some(L), Some(L), Some(S), Some(S), Some(L), Some(L)], [Some(S), Some(S), Some(L), Some(L), Some(S), Some(S)], [Some(L), Some(L), Some(L), Some(S), Some(S), Some(S)], [Some(L), Some(S), Some(S), Some(S), Some(S), Some(L)], [Some(S), Some(L), Some(S), Some(S), Some(L), Some(S)], [Some(L), Some(S), Some(L), Some(L), Some(S), None], [Some(L), Some(S), Some(S), Some(S), Some(L), None], [Some(L), Some(S), Some(S), Some(L), None, None], [Some(S), Some(L), Some(S), Some(L), Some(S), Some(L)], [Some(L), Some(S), Some(L), Some(S), Some(L), Some(S)], [Some(L), Some(S), Some(S), Some(L), Some(S), None], [Some(S), Some(L), Some(L), Some(L), Some(L), Some(S)], [Some(S), Some(S), Some(L), Some(L), Some(S), Some(L)], [Some(L), Some(S), Some(L), Some(L), Some(S), Some(L)], [Some(S), Some(L), Some(S), Some(L), Some(S), None], [Some(S), Some(L), Some(L), Some(S), Some(L), Some(S)], ];