elif_web/
prelude.rs

1//! # Prelude
2//!
3//! The prelude module provides convenient imports for common elif.rs functionality.
4//!
5//! ```rust
6//! use elif::prelude::*;
7//! ```
8
9// Essential HTTP types
10pub use crate::{HttpError, HttpResult};
11pub use crate::{Router, Server};
12pub use elif_http::{ElifRequest as Request, ElifResponse as Response};
13// Also export original types for macro compatibility
14pub use elif_http::{ElifRequest, ElifResponse};
15
16// Common traits - using correct exports
17pub use elif_http::GenericHandler as Handler;
18pub use elif_http::{IntoElifResponse, Middleware};
19
20// Controller types needed for macros
21pub use elif_http::controller::{ElifController, ControllerRoute, RouteParam};
22pub use elif_http::routing::HttpMethod;
23pub use elif_http::routing::params::ParamType;
24pub use elif_orm::Model;
25
26// Core types
27pub use crate::{
28    ApiError, ApiErrorResponse, AppConfig, AppConfigTrait, BaseModule, ConfigSource, Container,
29    ContainerBuilder, CoreError, Environment, ErrorDefinition, Module, ModuleLoader,
30    ModuleRegistry, ProviderRegistry, ServiceProvider, ServiceRegistry, ServiceScope,
31};
32
33// Utility functions - check if these exist or create aliases
34// pub use elif_http::response::{response};
35// pub use elif_http::request::{request};
36
37// JSON helper
38pub use serde_json::json;
39
40// Common derives
41pub use serde::{Deserialize, Serialize};
42
43// Async traits
44pub use async_trait::async_trait;
45
46// Macros
47pub use crate::main;
48pub use elif_macros::bootstrap;
49pub use crate::{controller, module};
50pub use elif_http_derive::{get, post, put, delete, patch, head, options, param, body};
51
52// Bootstrap traits and types
53pub use elif_http::AppBootstrap;
54pub use elif_http::bootstrap::AppBootstrapper;