فهرست منبع

Add Mime::get_parameter

Simon Sapin 8 سال پیش
والد
کامیت
d56fcdd066
2فایلهای تغییر یافته به همراه11 افزوده شده و 1 حذف شده
  1. 1 1
      src/lib.rs
  2. 10 0
      src/mime.rs

+ 1 - 1
src/lib.rs

@@ -10,7 +10,7 @@
 //!
 //! assert_eq!(url.mime_type().type_, "text");
 //! assert_eq!(url.mime_type().subtype, "plain");
-//! assert_eq!(url.mime_type().parameters, [("charset".into(), "US-ASCII".into())]);
+//! assert_eq!(url.mime_type().get_parameter("charset"), Some("US-ASCII"));
 //! assert_eq!(body, b"Hello World!");
 //! assert!(fragment.is_none());
 //! ```

+ 10 - 0
src/mime.rs

@@ -10,6 +10,16 @@ pub struct Mime {
     pub parameters: Vec<(String, String)>
 }
 
+impl Mime {
+    pub fn get_parameter<P>(&self, name: &P) -> Option<&str>
+        where P: ?Sized + PartialEq<str>
+    {
+        self.parameters.iter()
+            .find(|&&(ref n, _)| name == &**n)
+            .map(|&(_, ref v)| &**v)
+    }
+}
+
 #[derive(Debug)]
 pub struct MimeParsingError(());