#![cfg_attr(not(feature = "fs"), doc = "```rust,ignore")]
#![cfg_attr(feature = "fs", doc = "```rust,no_run")]
#![cfg_attr(not(feature = "fs"), doc = "```rust,ignore")]
#![cfg_attr(feature = "fs", doc = "```rust,no_run")]
#![cfg_attr(any(docsrs, feature = "nightly"), feature(doc_cfg))]
extern crate self as cu;
pub mod str;
pub use str::{ByteFormat, ZString};
mod env_var;
pub use env_var::*;
mod atomic; pub use atomic::*;
mod misc; pub use misc::*;
mod errhand;
pub use errhand::*;
pub use pistonite_cu_proc_macros::context;
pub mod lv;
pub use lv::{debug, error, info, trace, warn};
#[cfg(feature = "print")]
pub mod cli;
#[cfg(feature = "print")]
pub use cli::{CtrlcSignal, ProgressBar, progress};
#[cfg(feature = "prompt")]
pub use cli::{password_chars_legal, prompt, yesno};
#[cfg(feature = "cli")]
pub use pistonite_cu_proc_macros::cli;
pub type BoxedFuture<T> = std::pin::Pin<Box<dyn Future<Output = T> + Send + 'static>>;
#[cfg(feature = "coroutine")]
pub mod co;
#[cfg(feature = "coroutine")]
pub use co::{join, select, try_join};
#[cfg(feature = "fs")]
pub mod fs;
#[cfg(feature = "fs")]
pub use fs::bin;
#[cfg(feature = "fs")]
pub use fs::bin::which;
#[cfg(feature = "process")]
mod process;
#[cfg(feature = "process")]
pub use process::{Child, Command, CommandBuilder, Spawn, color_flag, color_flag_eq, pio};
#[cfg(all(feature = "process", feature = "print"))]
pub use process::{width_flag, width_flag_eq};
#[cfg(feature = "parse")]
mod parse;
#[cfg(feature = "parse")]
pub use parse::*;
#[cfg(feature = "parse")]
pub use pistonite_cu_proc_macros::Parse;
#[doc(hidden)]
pub mod __priv {
#[cfg(feature = "process")]
pub use crate::process::__ConfigFn;
}
#[doc(hidden)]
pub mod lib {
#[cfg(feature = "cli")]
pub use clap;
#[cfg(feature = "derive")]
pub use derive_more;
}
#[doc(hidden)]
pub mod pre {
pub use crate::Context as _;
pub use crate::str::{OsStrExtension as _, OsStrExtensionOwned as _};
#[cfg(feature = "cli")]
pub use crate::lib::clap;
#[cfg(feature = "coroutine")]
pub use tokio::io::{AsyncBufReadExt as _, AsyncReadExt as _, AsyncWriteExt as _};
#[cfg(feature = "fs")]
pub use crate::str::PathExtension as _;
#[cfg(feature = "parse")]
pub use crate::ParseTo as _;
#[cfg(feature = "process")]
pub use crate::Spawn as _;
#[cfg(feature = "json")]
pub use crate::json;
#[cfg(feature = "toml")]
pub use crate::toml;
#[cfg(feature = "yaml")]
pub use crate::yaml;
#[cfg(feature = "serde")]
pub use ::serde::{Deserialize, Serialize};
#[cfg(feature = "derive")]
pub use crate::lib::derive_more;
#[cfg(feature = "derive")]
pub use crate::lib::derive_more::{
AsMut, AsRef, Binary as DisplayBinary, Constructor, Debug as DebugCustom, Deref, DerefMut,
Display, From, Index, IndexMut, Into, IntoIterator, IsVariant, LowerExp as DisplayLowerExp,
LowerHex as DisplayLowerHex, Octal as DisplayOctal, Pointer as DisplayPointer,
UpperExp as DisplayUpperExp, UpperHex as DisplayUpperHex,
};
}