1pub mod bootstrap;
2pub mod config;
3pub mod container;
4pub mod errors;
5pub mod examples;
6pub mod foundation;
7pub mod modules;
8pub mod providers;
9pub mod specs;
10
11pub use bootstrap::{
13 AutoConfigBuilder, ConfigError as BootstrapConfigError, ConfigurationRule, ContainerAutoConfig, ProviderConfigurator,
14 ValidationReport as BootstrapValidationReport,
15};
16pub use errors::{ApiError, ApiErrorResponse, CoreError, ErrorDefinition};
17pub use foundation::{
18 Finalizable, FrameworkComponent, Initializable, LifecycleManager, LifecycleState,
19};
20pub use container::{IocContainer, IocContainerBuilder, ServiceBinder, ServiceStatistics};
22#[deprecated(since = "0.6.0", note = "Use IocContainer instead")]
24pub use container::{Container, ContainerBuilder};
25pub use config::validation::ConfigError;
27pub use config::{AppConfig, AppConfigTrait, ConfigSource, Environment};
28pub use container::{ServiceRegistry, ServiceScope};
29pub use modules::{BaseModule, Module, ModuleError, ModuleLoader, ModuleRegistry};
30pub use providers::{ProviderLifecycleManager, ProviderRegistry, ServiceProvider};
31pub use specs::{ApiSpec, OperationSpec, ResourceSpec, StorageSpec};
32
33pub use errors::CoreError as ElifError;
35
36pub const VERSION: &str = env!("CARGO_PKG_VERSION");
38
39pub const FRAMEWORK_NAME: &str = "elif.rs";
41
42pub fn version() -> &'static str {
44 VERSION
45}
46
47pub fn name() -> &'static str {
49 FRAMEWORK_NAME
50}