1#[cfg(test)]
2extern crate insta;
3extern crate log;
4
5pub use crate::parse::{available_flags, parse, Parser};
6pub use crate::spec::arg::{SpecArg, SpecDoubleDashChoices, SpecRequiredIfEq};
7pub use crate::spec::builder::{SpecArgBuilder, SpecCommandBuilder, SpecFlagBuilder};
8pub use crate::spec::choices::{SpecChoice, SpecChoiceAlias, SpecChoices};
9pub use crate::spec::cmd::SpecCommand;
10pub use crate::spec::complete::SpecComplete;
11pub use crate::spec::effect::SpecCommandEffect;
12pub use crate::spec::flag::{SpecDefaultIf, SpecFlag, SpecFlagAction, SpecRequiresIf};
13pub use crate::spec::flagset::{SpecFlagSet, SpecUse};
14pub use crate::spec::group::SpecGroup;
15pub use crate::spec::mount::SpecMount;
16pub use crate::spec::unknown_flags::UnknownFlags;
17pub use crate::spec::view::SpecView;
18pub use crate::spec::Spec;
19pub use crate::warn::{Warning, WarningKind};
20
21#[macro_use]
22#[allow(unused_assignments)] pub mod error;
24#[macro_use]
25pub mod macros;
26pub mod complete;
27pub mod spec;
28pub use error::Result;
29
30#[cfg(feature = "docs")]
31pub mod docs;
32pub mod go;
33pub mod help_template;
34pub mod parse;
35pub mod sdk;
36pub mod sh;
37pub(crate) mod string;
38#[cfg(test)]
39mod test;
40pub mod warn;