xsd_types/lexical/string/
token.rs

1use crate::lexical::{Lexical, LexicalFormOf};
2use crate::InvalidToken;
3pub use crate::{Token, TokenBuf};
4
5impl Lexical for Token {
6	type Error = InvalidToken<String>;
7
8	fn parse(value: &str) -> Result<&Self, Self::Error> {
9		Self::new(value).map_err(|_| InvalidToken(value.to_owned()))
10	}
11}
12
13impl LexicalFormOf<crate::TokenBuf> for Token {
14	type ValueError = InvalidToken<String>;
15
16	fn try_as_value(&self) -> Result<crate::TokenBuf, Self::ValueError> {
17		self.as_str().parse()
18	}
19}