acts/
lib.rs

1//! A lightweight, fast, tiny, extensiable workflow engine
2
3#![doc = include_str!("../README.md")]
4
5mod builder;
6mod cache;
7mod config;
8mod engine;
9mod env;
10mod error;
11mod event;
12mod export;
13mod model;
14mod package;
15mod plugin;
16mod scheduler;
17mod signal;
18mod store;
19mod utils;
20
21#[cfg(test)]
22mod tests;
23
24use std::sync::Arc;
25use std::sync::RwLock;
26
27pub use builder::EngineBuilder;
28pub use config::Config;
29pub use engine::Engine;
30pub use env::ActUserVar;
31pub use error::{ActError, Error};
32pub use event::{Action, Event, Message, MessageState};
33pub use export::{Channel, ChannelOptions, Executor, ExecutorQuery, Extender};
34pub use model::*;
35pub use package::{
36    ActOperation, ActPackage, ActPackageCatalog, ActPackageMeta, ActResource, ActRunAs,
37};
38pub use plugin::ActPlugin;
39pub use scheduler::Context;
40pub use signal::Signal;
41pub use store::{DbCollection, PageData, data, query};
42pub type Result<T> = std::result::Result<T, ActError>;
43
44pub(crate) use scheduler::NodeKind;
45pub(crate) type ShareLock<T> = Arc<RwLock<T>>;
46pub(crate) use package::Package;
47pub(crate) use scheduler::{ActTask, TaskState};