fix(header): deprecate HeaderFormatter
This commit is contained in:
		| @@ -10,6 +10,7 @@ license = "MIT" | ||||
| authors = ["Sean McArthur <sean.monstar@gmail.com>"] | ||||
| keywords = ["http", "hyper", "hyperium"] | ||||
| categories = ["web-programming::http-client", "web-programming::http-server"] | ||||
| build = "build.rs" | ||||
|  | ||||
| [dependencies] | ||||
| base64 = "0.3.0" | ||||
| @@ -32,6 +33,9 @@ num_cpus = "1.0" | ||||
| pretty_env_logger = "0.1" | ||||
| spmc = "0.2" | ||||
|  | ||||
| [build-dependencies] | ||||
| rustc_version = "0.1" | ||||
|  | ||||
| [features] | ||||
| default = [] | ||||
| nightly = [] | ||||
|   | ||||
							
								
								
									
										7
									
								
								build.rs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								build.rs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,7 @@ | ||||
| extern crate rustc_version as rustc; | ||||
|  | ||||
| fn main() { | ||||
|     if rustc::version_matches(">= 1.9") { | ||||
|         println!("cargo:rustc-cfg=has_deprecated"); | ||||
|     } | ||||
| } | ||||
| @@ -598,23 +598,30 @@ impl<'a> FromIterator<HeaderView<'a>> for Headers { | ||||
|     } | ||||
| } | ||||
|  | ||||
| impl<'a> fmt::Display for &'a (Header + Send + Sync) { | ||||
| deprecated! { | ||||
|     #[deprecated(note="The semantics of formatting a HeaderFormat directly are not clear")] | ||||
|     impl<'a> fmt::Display for &'a (Header + Send + Sync) { | ||||
|         #[inline] | ||||
|         fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { | ||||
|             let mut multi = MultilineFormatter(Multi::Join(true, f)); | ||||
|             self.fmt_multi_header(&mut multi) | ||||
|         } | ||||
|     } | ||||
| } | ||||
|  | ||||
| /// A wrapper around any Header with a Display impl that calls `fmt_header`. | ||||
| /// | ||||
| /// This can be used like so: `format!("{}", HeaderFormatter(&header))` to | ||||
| /// get the 'value string' representation of this Header. | ||||
| /// | ||||
| /// Note: This may not necessarily be the value written to stream, such | ||||
| /// as with the SetCookie header. | ||||
| pub struct HeaderFormatter<'a, H: Header>(pub &'a H); | ||||
| deprecated! { | ||||
|     #[deprecated(note="The semantics of formatting a HeaderFormat directly are not clear")] | ||||
|     /// A wrapper around any Header with a Display impl that calls `fmt_header`. | ||||
|     /// | ||||
|     /// This can be used like so: `format!("{}", HeaderFormatter(&header))` to | ||||
|     /// get the 'value string' representation of this Header. | ||||
|     /// | ||||
|     /// Note: This may not necessarily be the value written to stream, such | ||||
|     /// as with the SetCookie header. | ||||
|     pub struct HeaderFormatter<'a, H: Header>(pub &'a H); | ||||
| } | ||||
|  | ||||
| #[allow(deprecated)] | ||||
| impl<'a, H: Header> fmt::Display for HeaderFormatter<'a, H> { | ||||
|     #[inline] | ||||
|     fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { | ||||
| @@ -623,6 +630,7 @@ impl<'a, H: Header> fmt::Display for HeaderFormatter<'a, H> { | ||||
|     } | ||||
| } | ||||
|  | ||||
| #[allow(deprecated)] | ||||
| impl<'a, H: Header> fmt::Debug for HeaderFormatter<'a, H> { | ||||
|     #[inline] | ||||
|     fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { | ||||
|   | ||||
| @@ -55,6 +55,13 @@ macro_rules! unimplemented { | ||||
|     }); | ||||
| } | ||||
|  | ||||
| macro_rules! deprecated { | ||||
|     (#[$note:meta] $i:item) => ( | ||||
|         #[cfg_attr(has_deprecated, $note)] | ||||
|         $i | ||||
|     ); | ||||
| } | ||||
|  | ||||
| #[cfg(test)] | ||||
| mod mock; | ||||
| pub mod client; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user