ソースを参照

Merge pull request #75 from frewsxcv/if-let

Utilize `if...let` sugar
Simon Sapin 11 年 前
コミット
91795a95b2
3 ファイル変更14 行追加24 行削除
  1. 3 4
      src/form_urlencoded.rs
  2. 7 13
      src/format.rs
  3. 4 7
      src/lib.rs

+ 3 - 4
src/form_urlencoded.rs

@@ -1,4 +1,4 @@
-// Copyright 2013-2014 Simon Sapin.
+// Copyright 2013-2015 Simon Sapin.
 //
 // Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
 // http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
@@ -67,9 +67,8 @@ fn parse_internal(input: &[u8], mut encoding_override: EncodingOverride, mut use
             let name = replace_plus(name);
             let value = replace_plus(value);
             if use_charset && name.as_slice() == b"_charset_" {
-                match EncodingOverride::lookup(value.as_slice()) {
-                    Some(encoding) => encoding_override = encoding,
-                    None => (),
+                if let Some(encoding) = EncodingOverride::lookup(value.as_slice()) {
+                    encoding_override = encoding;
                 }
                 use_charset = false;
             }

+ 7 - 13
src/format.rs

@@ -1,4 +1,4 @@
-// Copyright 2013-2014 Simon Sapin.
+// Copyright 2013-2015 Simon Sapin.
 //
 // Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
 // http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
@@ -51,12 +51,9 @@ impl<'a> fmt::String for UserInfoFormatter<'a> {
     fn fmt(&self, formatter: &mut Formatter) -> fmt::Result {
         if !self.username.is_empty() || self.password.is_some() {
             try!(formatter.write_str(self.username));
-            match self.password {
-                None => (),
-                Some(password) => {
-                    try!(formatter.write_str(":"));
-                    try!(formatter.write_str(password));
-                }
+            if let Some(password) = self.password {
+                try!(formatter.write_str(":"));
+                try!(formatter.write_str(password));
             }
             try!(formatter.write_str("@"));
         }
@@ -75,12 +72,9 @@ impl<'a> fmt::String for UrlNoFragmentFormatter<'a> {
         try!(formatter.write_str(self.url.scheme.as_slice()));
         try!(formatter.write_str(":"));
         try!(self.url.scheme_data.fmt(formatter));
-        match self.url.query {
-            None => (),
-            Some(ref query) => {
-                try!(formatter.write_str("?"));
-                try!(formatter.write_str(query.as_slice()));
-            }
+        if let Some(ref query) = self.url.query {
+            try!(formatter.write_str("?"));
+            try!(formatter.write_str(query.as_slice()));
         }
         Ok(())
     }

+ 4 - 7
src/lib.rs

@@ -1,4 +1,4 @@
-// Copyright 2013-2014 Simon Sapin.
+// Copyright 2013-2015 Simon Sapin.
 //
 // Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
 // http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
@@ -771,12 +771,9 @@ impl rustc_serialize::Decodable for Url {
 impl fmt::String for Url {
     fn fmt(&self, formatter: &mut Formatter) -> fmt::Result {
         try!(UrlNoFragmentFormatter{ url: self }.fmt(formatter));
-        match self.fragment {
-            None => (),
-            Some(ref fragment) => {
-                try!(formatter.write_str("#"));
-                try!(formatter.write_str(fragment.as_slice()));
-            }
+        if let Some(ref fragment) = self.fragment {
+            try!(formatter.write_str("#"));
+            try!(formatter.write_str(fragment.as_slice()));
         }
         Ok(())
     }