ferrunix_core/
lib.rs

1#![cfg_attr(
2    feature = "multithread",
3    doc = "_You're viewing the documentation with the **`multithread` feature** turned on._\n\n"
4)]
5#![cfg_attr(
6    feature = "tokio",
7    doc = "_You're viewing the documentation with the **`tokio` feature** turned on._\n\n"
8)]
9#![cfg_attr(
10    all(not(feature = "tokio"), not(feature = "multithread")),
11    doc = "#### _You're viewing the documentation with **`no features`** turned on._\n\n"
12)]
13//! Core types, traits, and implementations for [`ferrunix`].
14//!
15//! [`ferrunix`]: https://crates.io/crates/ferrunix
16
17pub mod cycle_detection;
18pub mod dependencies;
19pub mod dependency_builder;
20pub mod error;
21pub mod object_builder;
22pub mod registration;
23pub mod registry;
24pub mod types;
25
26// Public re-exports for easier access.
27// These are the main types users use for interacting with ferrunix.
28#[doc(inline)]
29pub use dependencies::Singleton;
30#[doc(inline)]
31pub use dependencies::Transient;
32#[doc(inline)]
33pub use registry::Registry;
34#[doc(inline)]
35pub use types::Ref;