summaryrefslogtreecommitdiff
path: root/vendored/mpd/src/sticker.rs
diff options
context:
space:
mode:
Diffstat (limited to 'vendored/mpd/src/sticker.rs')
-rw-r--r--vendored/mpd/src/sticker.rs23
1 files changed, 23 insertions, 0 deletions
diff --git a/vendored/mpd/src/sticker.rs b/vendored/mpd/src/sticker.rs
new file mode 100644
index 0000000..b1a2dc3
--- /dev/null
+++ b/vendored/mpd/src/sticker.rs
@@ -0,0 +1,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())),
+ }
+ }
+}