clientele/
lib.rs

1// This is free and unencumbered software released into the public domain.
2
3//! This crate provides CLI support utilities.
4//!
5//! ```edition2021
6//! # use clientele::*;
7//! ```
8
9//#![no_std]
10#![deny(unsafe_code)]
11#![allow(unused)]
12
13#[cfg(doctest)]
14#[doc = include_str!("../../../README.md")]
15pub struct ReadmeDoctests;
16
17pub use known_errors::sysexits::{SysexitsError, SysexitsResult};
18
19#[cfg(feature = "std")]
20pub use known_errors::{abort, sysexits::exit};
21
22#[doc(hidden)]
23mod prelude;
24
25#[cfg(feature = "std")]
26mod args;
27#[cfg(feature = "std")]
28pub use args::*;
29
30#[cfg(feature = "camino")]
31pub use camino::{Utf8Path, Utf8PathBuf};
32
33#[cfg(feature = "dotenv")]
34pub use dotenvy::dotenv;
35
36#[cfg(all(feature = "std", feature = "getenv"))]
37pub use getenv as envs;
38
39#[cfg(all(feature = "std", feature = "clap"))]
40mod options;
41#[cfg(all(feature = "std", feature = "clap"))]
42pub use options::*;
43
44#[cfg(all(feature = "std", feature = "getenv", feature = "camino"))]
45pub mod paths;
46
47#[cfg(all(feature = "std", feature = "subcommands"))]
48#[doc(hidden)]
49mod subcommands;
50#[cfg(all(feature = "std", feature = "subcommands"))]
51#[doc(hidden)]
52pub use subcommands::*;
53
54#[doc(hidden)]
55pub mod crates;