@@ -28,31 +28,31 @@ impl Display for Params{
2828
2929
3030impl Params {
31- pub fn get ( & self , key : String ) -> Option < & String > {
32- return self . hashmap . get ( & key ) ;
31+ pub fn get ( & self , name : & str ) -> Option < & String > {
32+ return self . hashmap . get ( name ) ;
3333 }
3434
3535 pub fn add ( & mut self , name : String , value : String ) {
3636 self . hashmap . insert ( name, value) ;
3737 }
3838
39- pub fn contains ( & self , name : String ) -> bool {
40- self . hashmap . contains_key ( & name)
39+ pub fn contains ( & self , name : & str ) -> bool {
40+ self . hashmap . contains_key ( name)
4141 }
4242
4343 pub fn add_from_string ( & mut self , s : & String ) -> Result < ( ) , ParamParserError > {
4444 for ( i, & character) in s. as_bytes ( ) . iter ( ) . enumerate ( ) {
4545 if character == b'=' {
4646 self . add (
47- ( & s[ ..i] ) . trim ( ) . to_string ( ) ,
48- ( & s[ ( i + 1 ) ..] ) . trim ( ) . to_string ( ) ,
47+ ( s[ ..i] ) . trim ( ) . to_string ( ) ,
48+ ( s[ ( i + 1 ) ..] ) . trim ( ) . to_string ( ) ,
4949 ) ;
5050 return Ok ( ( ) ) ;
5151 }
5252 }
53- return Err ( ParamParserError {
53+ Err ( ParamParserError {
5454 data : s. to_string ( ) ,
55- } ) ;
55+ } )
5656 }
5757
5858 pub fn write_to_sdtout ( & self ) -> std:: io:: Result < ( ) > {
@@ -63,9 +63,9 @@ impl Params {
6363
6464 pub fn write_to < T : std:: io:: Write > ( & self , stream : & mut T ) -> std:: io:: Result < ( ) > {
6565 for ( key, value) in self . hashmap . iter ( ) {
66- stream. write_fmt ( format_args ! ( "{0}={1}" , key, value) ) ?;
66+ stream. write_fmt ( format_args ! ( "{0}={1}\n " , key, value) ) ?;
6767 }
68- stream. write_all ( b"\n " ) ?;
68+ stream. write_all ( b"\n \n " ) ?;
6969 Ok ( ( ) )
7070 }
7171}
@@ -81,12 +81,13 @@ pub fn from_stream<T: Read>(stream: T) -> Result<Params, Box<dyn Error>> {
8181 buffer. clear ( ) ;
8282
8383 buf_reader. read_line ( & mut buffer) ?;
84+
8485 if buffer. trim ( ) . is_empty ( ) {
8586 break ;
8687 }
8788 params. add_from_string ( & buffer) ?;
8889 }
89- return Ok ( params) ;
90+ Ok ( params)
9091}
9192
9293pub fn from_stdin ( ) -> Result < Params , Box < dyn Error > > {
0 commit comments