1 //! Define [`Command`] line [arguments][`Arg`] 2 3 #[macro_use] 4 mod macros; 5 6 mod action; 7 mod app_settings; 8 mod arg; 9 mod arg_group; 10 mod arg_predicate; 11 mod arg_settings; 12 mod command; 13 mod possible_value; 14 mod usage_parser; 15 mod value_hint; 16 mod value_parser; 17 18 #[cfg(feature = "regex")] 19 mod regex; 20 21 #[cfg(debug_assertions)] 22 mod debug_asserts; 23 24 #[cfg(test)] 25 mod tests; 26 27 pub use action::ArgAction; 28 pub use app_settings::{AppFlags, AppSettings}; 29 pub use arg::Arg; 30 pub use arg_group::ArgGroup; 31 pub use arg_settings::{ArgFlags, ArgSettings}; 32 pub use command::Command; 33 pub use possible_value::PossibleValue; 34 pub use value_hint::ValueHint; 35 pub use value_parser::PossibleValuesParser; 36 pub use value_parser::RangedI64ValueParser; 37 pub use value_parser::RangedU64ValueParser; 38 pub use value_parser::StringValueParser; 39 pub use value_parser::TypedValueParser; 40 pub use value_parser::ValueParser; 41 pub use value_parser::ValueParserFactory; 42 pub use value_parser::_AnonymousValueParser; 43 pub use value_parser::_AutoValueParser; 44 pub use value_parser::via_prelude; 45 pub use value_parser::BoolValueParser; 46 pub use value_parser::BoolishValueParser; 47 pub use value_parser::EnumValueParser; 48 pub use value_parser::FalseyValueParser; 49 pub use value_parser::NonEmptyStringValueParser; 50 pub use value_parser::OsStringValueParser; 51 pub use value_parser::PathBufValueParser; 52 53 #[allow(deprecated)] 54 pub use command::App; 55 56 #[cfg(feature = "regex")] 57 pub use self::regex::RegexRef; 58 59 pub(crate) use action::CountType; 60 pub(crate) use arg::display_arg_val; 61 pub(crate) use arg_predicate::ArgPredicate; 62