ruma_identifiers_validation/room_alias_id.rs
1use crate::{localpart_is_backwards_compatible, parse_id, Error};
2
3/// Validate a [room alias] as used by clients and servers.
4///
5/// [room alias]: https://spec.matrix.org/latest/appendices/#room-aliases
6pub fn validate(s: &str) -> Result<(), Error> {
7 let colon_idx = parse_id(s, b'#')?;
8 let localpart = &s[1..colon_idx];
9
10 localpart_is_backwards_compatible(localpart)?;
11
12 Ok(())
13}