toolchest/
lib.rs

1#![cfg_attr(not(feature = "std"), no_std)]
2#![warn(missing_docs)]
3#![warn(rust_2018_idioms)]
4#![deny(unsafe_code)]
5
6//! # toolchest - Essential Utility Collection for Rust
7//!
8//! A comprehensive collection of utility functions that complement itertools.
9//! While itertools handles collection manipulation, toolchest provides everything else.
10//!
11//! ## Quick Start
12//!
13//! ```rust
14//! use toolchest::prelude::*;
15//! 
16//! // String manipulation
17//! let snake = strings::to_snake_case("HelloWorld");
18//! 
19//! // Math utilities  
20//! let clamped = math::clamp(15, 0, 10);
21//! 
22//! // Type checking
23//! let is_empty = types::is_empty::<Vec<i32>>(&vec![]);
24//! ```
25
26#[cfg(feature = "std")]
27pub mod strings;
28
29#[cfg(feature = "std")]
30pub mod math;
31
32#[cfg(feature = "std")]
33pub mod deep;
34
35#[cfg(feature = "std")]
36pub mod functions;
37
38pub mod types;
39
40pub mod prelude;
41#[cfg(feature = "std")]
42pub mod collections;
43#[cfg(feature = "std")]
44pub mod time;
45#[cfg(feature = "std")]
46pub mod random;
47#[cfg(feature = "std")]
48pub mod hash;
49#[cfg(feature = "std")]
50pub mod io;
51#[cfg(feature = "std")]
52pub mod validation;
53#[cfg(feature = "std")]
54pub mod encoding;
55
56// Re-export commonly used items at crate root
57#[cfg(feature = "std")]
58pub use strings::{to_camel_case, to_kebab_case, to_snake_case};
59