ruma-identifiers-validation 0.7.0

Validation logic for ruma-identifiers and ruma-identifiers-macros
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
use crate::Error;

pub fn validate(s: &str) -> Result<(), Error> {
    let colon_idx = s.find(':').ok_or(Error::MissingDelimiter)?;

    if colon_idx == 0 {
        Err(Error::InvalidKeyAlgorithm)
    } else {
        // Any non-empty string is accepted as a key algorithm for forwards compatibility
        Ok(())
    }
}