bones_utils/
lib.rs

1//! General utilities for [Bones] meta-engine crates.
2//!
3//! [Bones]: https://fishfolk.org/development/bones/introduction/
4//!
5#![allow(clippy::type_complexity)]
6#![warn(missing_docs)]
7#![warn(clippy::undocumented_unsafe_blocks)]
8
9mod collections;
10mod default;
11#[cfg(feature = "ulid")]
12mod labeled_id;
13mod names;
14#[cfg(feature = "turborand")]
15mod random;
16#[cfg(feature = "ulid")]
17mod ulid;
18
19/// Helper to export the same types in the crate root and in the prelude.
20macro_rules! pub_use {
21    () => {
22        #[cfg(feature = "turborand")]
23        pub use crate::random::*;
24        pub use crate::{collections::*, default::*, names::*};
25        #[cfg(feature = "ulid")]
26        pub use crate::{labeled_id::*, ulid::*};
27        pub use bones_utils_macros::*;
28    };
29}
30pub_use!();
31
32/// The prelude.
33pub mod prelude {
34    pub_use!();
35}