Jonas Platte 22ec1710b5
Update ruma-identifiers validation logic
* Allow empty localparts
* Simplify some code
2020-09-21 22:34:56 +02:00

15 lines
359 B
Rust

use crate::Error;
/// Room version identifiers cannot be more than 32 code points.
const MAX_CODE_POINTS: usize = 32;
pub fn validate(s: &str) -> Result<(), Error> {
if s.is_empty() {
Err(Error::EmptyRoomVersionId)
} else if s.chars().count() > MAX_CODE_POINTS {
Err(Error::MaximumLengthExceeded)
} else {
Ok(())
}
}