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::{
15	join::Join,
16	stripped_state::{
17		StrippedCreateVerdict, enforce_stripped_create, into_client_stripped, v12_room_ids,
18	},
19};
20
21pub struct Service {
22	services: Arc<crate::services::OnceServices>,
23}
24
25impl crate::Service for Service {
26	fn build(args: &crate::Args<'_>) -> Result<Arc<Self>> {
27		Ok(Arc::new(Self { services: args.services.clone() }))
28	}
29
30	fn name(&self) -> &str { crate::service::make_name(std::module_path!()) }
31}