#[cfg(any(feature = "mock", test))]
use ::std::{
any::{Any, TypeId},
collections::HashMap,
sync::{Arc, Mutex},
};
#[rustfmt::skip]
#[allow(clippy::overly_complex_bool_expr)]
#[allow(clippy::nonminimal_bool)]
#[allow(clippy::useless_conversion)]
#[allow(clippy::only_used_in_recursion)]
#[allow(clippy::map_identity)]
#[allow(clippy::collapsible_if)]
#[rustfmt::skip]
#[cfg_attr(any(feature = "mock", test), mockall::automock)]
pub trait @{ group_name|pascal }@Repositories: Send + Sync {
}
#[rustfmt::skip]
#[cfg_attr(any(feature = "mock", test), mockall::automock)]
pub trait @{ group_name|pascal }@Queries: Send + Sync {
}
#[cfg(any(feature = "mock", test))]
#[derive(derive_new::new)]
pub struct Emu@{ group_name|pascal }@Repositories {
_repo: Arc<Mutex<HashMap<TypeId, Box<dyn Any + Send + Sync>>>>,
}
#[rustfmt::skip]
#[cfg(any(feature = "mock", test))]
impl @{ group_name|pascal }@Repositories for Emu@{ group_name|pascal }@Repositories {
}
#[cfg(any(feature = "mock", test))]
#[derive(derive_new::new)]
pub struct Emu@{ group_name|pascal }@Queries {
_repo: Arc<Mutex<HashMap<TypeId, Box<dyn Any + Send + Sync>>>>,
}
#[rustfmt::skip]
#[cfg(any(feature = "mock", test))]
impl @{ group_name|pascal }@Queries for Emu@{ group_name|pascal }@Queries {
}
@{-"\n"}@