[−][src]Function flood_tide::check::check_sorted_opt_ary_and_sho_idx_ary_with
pub fn check_sorted_opt_ary_and_sho_idx_ary_with(
opt_ary: &[Opt<'_>],
sho_idx_ary: &[(u8, usize)]
) -> bool
Check sorted opt ary table and sorted sho idx ary table.
- opt_ary: must be sorted by long keyword. ex) "barn"
- sho_idx_ary: must be sorted short keyword. ex) b'b'
- return:
- true: ok
- false: illegal tables
Examples
#[cfg(feature = "option_argument")] { use flood_tide::check; use flood_tide::{Arg, Lex, Opt, OptNum}; #[rustfmt::skip] #[repr(u8)] #[derive(Debug, PartialEq)] enum CmdOP { A = 1, Barn, Eat, }; impl CmdOP { pub const fn to(self) -> OptNum { self as OptNum } } #[rustfmt::skip] let opt_ary = [ Opt { sho: b'a', lon: "", has: Arg::No, num: CmdOP::A.to(), }, Opt { sho: b'b', lon: "barn", has: Arg::No, num: CmdOP::Barn.to(), }, Opt { sho: 0u8, lon: "eat", has: Arg::Yes, num: CmdOP::Eat.to(), }, ]; #[rustfmt::skip] let opt_ary_sho_idx = [(b'a',0),(b'b',1)]; assert!(check::check_sorted_opt_ary_and_sho_idx_ary_with( &opt_ary, &opt_ary_sho_idx )); }