@@ -499,8 +499,9 @@ pub mod reader {
499499 Ok ( result)
500500 }
501501
502- fn read_enum_variant < T , F > ( & mut self , _: & [ & str ] , f : F ) -> DecodeResult < T > where
503- F : FnOnce ( & mut Decoder < ' doc > , uint ) -> DecodeResult < T > ,
502+ fn read_enum_variant < T , F > ( & mut self , _: & [ & str ] ,
503+ mut f : F ) -> DecodeResult < T >
504+ where F : FnMut ( & mut Decoder < ' doc > , uint ) -> DecodeResult < T > ,
504505 {
505506 debug ! ( "read_enum_variant()" ) ;
506507 let idx = try!( self . _next_uint ( EsEnumVid ) ) ;
@@ -526,8 +527,9 @@ pub mod reader {
526527 f ( self )
527528 }
528529
529- fn read_enum_struct_variant < T , F > ( & mut self , _: & [ & str ] , f : F ) -> DecodeResult < T > where
530- F : FnOnce ( & mut Decoder < ' doc > , uint ) -> DecodeResult < T > ,
530+ fn read_enum_struct_variant < T , F > ( & mut self , _: & [ & str ] ,
531+ mut f : F ) -> DecodeResult < T >
532+ where F : FnMut ( & mut Decoder < ' doc > , uint ) -> DecodeResult < T > ,
531533 {
532534 debug ! ( "read_enum_struct_variant()" ) ;
533535 let idx = try!( self . _next_uint ( EsEnumVid ) ) ;
@@ -610,8 +612,8 @@ pub mod reader {
610612 self . read_tuple_arg ( idx, f)
611613 }
612614
613- fn read_option < T , F > ( & mut self , f : F ) -> DecodeResult < T > where
614- F : FnOnce ( & mut Decoder < ' doc > , bool ) -> DecodeResult < T > ,
615+ fn read_option < T , F > ( & mut self , mut f : F ) -> DecodeResult < T > where
616+ F : FnMut ( & mut Decoder < ' doc > , bool ) -> DecodeResult < T > ,
615617 {
616618 debug ! ( "read_option()" ) ;
617619 self . read_enum ( "Option" , move |this| {
0 commit comments