File tree Expand file tree Collapse file tree 1 file changed +23
-0
lines changed Expand file tree Collapse file tree 1 file changed +23
-0
lines changed Original file line number Diff line number Diff line change @@ -2,6 +2,7 @@ use std::io;
22use std:: iter;
33use std:: option;
44use std:: slice;
5+ use std:: borrow:: Cow ;
56
67use crate :: headers:: { HeaderValue , HeaderValues , Values } ;
78
@@ -59,3 +60,25 @@ impl ToHeaderValues for String {
5960 Ok ( Some ( value) . into_iter ( ) )
6061 }
6162}
63+
64+ impl ToHeaderValues for & String {
65+ type Iter = option:: IntoIter < HeaderValue > ;
66+
67+ fn to_header_values ( & self ) -> crate :: Result < Self :: Iter > {
68+ let value = self
69+ . parse ( )
70+ . map_err ( |err| io:: Error :: new ( io:: ErrorKind :: Other , err) ) ?;
71+ Ok ( Some ( value) . into_iter ( ) )
72+ }
73+ }
74+
75+ impl ToHeaderValues for Cow < ' _ , str > {
76+ type Iter = option:: IntoIter < HeaderValue > ;
77+
78+ fn to_header_values ( & self ) -> crate :: Result < Self :: Iter > {
79+ let value = self
80+ . parse ( )
81+ . map_err ( |err| io:: Error :: new ( io:: ErrorKind :: Other , err) ) ?;
82+ Ok ( Some ( value) . into_iter ( ) )
83+ }
84+ }
You can’t perform that action at this time.
0 commit comments