use super::*;
#[derive(Clone, Data)]
pub(crate) struct ServerData {
#[set(skip)]
#[get(pub(crate))]
#[get_mut(pub(crate))]
#[set(pub(crate))]
pub(super) server_config: ServerConfigData,
#[set(skip)]
#[get(pub(crate))]
#[get_mut(pub(crate))]
#[set(pub(crate))]
pub(super) hook: ServerHookList,
#[set(skip)]
#[get(pub(crate))]
#[get_mut(pub(crate))]
#[set(pub(crate))]
pub(super) task_panic: ServerHookList,
#[get_mut(skip)]
#[set(skip)]
#[get(pub(crate))]
#[get_mut(pub(crate))]
#[set(pub(crate))]
pub(super) read_error: ServerHookList,
}
#[derive(Clone)]
pub struct Server(pub(super) ArcRwLock<ServerData>);