injectable_rs_runtime/
lib.rs1#![forbid(unsafe_code)]
14#![deny(missing_docs)]
15
16mod error;
17mod extract;
18mod factory_ctx;
19mod inject;
20mod injectable;
21mod lifecycle;
22mod provider;
23mod registry;
24mod resolve;
25mod singleton;
26
27#[cfg(feature = "axum")]
28mod axum;
29
30pub use error::{InjectableError, InjectableResult};
31pub use extract::Extract;
32pub use factory_ctx::FactoryCtx;
33pub use inject::Inject;
34pub use injectable::Injectable;
35pub use lifecycle::{HookResult, PostConstruct, PreDestruct};
36pub use provider::{DynProvider, Provider};
37pub use registry::{
38 DEFAULT_TOKEN, InjectableArcFactory, InjectableHooksEntry, InjectableProvideFnPtr,
39 MakePreDestructFnPtr, PostConstructFnPtr, ProviderRegistry,
40};
41pub use resolve::ResolveContext;
42pub use singleton::{EmptySingletonStore, RequestScoped, Singleton, SingletonStore, Transient};
43
44#[cfg(feature = "axum")]
45pub use axum::{InjectableRejection, InjectableState};
46
47#[doc(hidden)]
50pub use inventory;