blob: b1a2dc316d0b740e4d36fbdb0cf8a582442e3e30 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
use crate::error::ParseError;
use std::str::FromStr;
pub struct Sticker {
pub name: String,
pub value: String,
}
impl FromStr for Sticker {
type Err = ParseError;
fn from_str(s: &str) -> Result<Sticker, ParseError> {
let mut parts = s.splitn(2, '=');
match (parts.next(), parts.next()) {
(Some(name), Some(value)) => {
Ok(Sticker {
name: name.to_owned(),
value: value.to_owned(),
})
}
_ => Err(ParseError::BadValue(s.to_owned())),
}
}
}
|