#![doc(html_root_url = "https://docs.rs/efflux/2.0.1")]
#[macro_use]
pub mod macros;
pub mod context;
pub mod io;
pub mod mapper;
pub mod reducer;
use self::mapper::Mapper;
use self::reducer::Reducer;
use self::mapper::MapperLifecycle;
use self::reducer::ReducerLifecycle;
use self::io::run_lifecycle;
#[inline]
pub fn run_mapper<M>(mapper: M)
where
M: Mapper + 'static,
{
run_lifecycle(MapperLifecycle::new(mapper));
}
#[inline]
pub fn run_reducer<R>(reducer: R)
where
R: Reducer + 'static,
{
run_lifecycle(ReducerLifecycle::new(reducer));
}
pub mod prelude {
pub use super::context::{Configuration, Context, Contextual};
pub use super::log;
pub use super::mapper::Mapper;
pub use super::reducer::Reducer;
}