Skip to main content

tuwunel_service/membership/
mod.rs

1mod ban;
2mod invite;
3mod join;
4mod kick;
5mod knock;
6mod leave;
7mod stripped_state;
8mod unban;
9
10use std::sync::Arc;
11
12use tuwunel_core::Result;
13
14pub use self::stripped_state::{
15	StrippedCreateVerdict, enforce_stripped_create, into_client_stripped, v12_room_ids,
16};
17
18pub struct Service {
19	services: Arc<crate::services::OnceServices>,
20}
21
22impl crate::Service for Service {
23	fn build(args: &crate::Args<'_>) -> Result<Arc<Self>> {
24		Ok(Arc::new(Self { services: args.services.clone() }))
25	}
26
27	fn name(&self) -> &str { crate::service::make_name(std::module_path!()) }
28}