phlow_engine/repositories.rs
1use std::collections::HashMap;
2use std::sync::Arc;
3use valu3::value::Value;
4
5pub type RepositoryFunction = Arc<dyn Fn(Value) -> Value + Send + Sync>;
6
7#[derive(Clone)]
8pub struct Repositories {
9 pub repositories: HashMap<String, RepositoryFunction>,
10}
11
12#[macro_export]
13macro_rules! plugin {
14 ($call:expr) => {
15 Arc::new($call) as RepositoryFunction
16 };
17}