@@ -673,45 +673,15 @@ impl Channel {
673673 }
674674}
675675
676- impl Writeable for Channel {
677- fn write < W : Writer > ( & self , writer : & mut W ) -> Result < ( ) , io:: Error > {
678- write_tlv_fields ! ( writer, {
679- ( 1 , self . outgoing_reputation, required) ,
680- ( 3 , self . incoming_revenue, required) ,
681- ( 5 , self . pending_htlcs, required) ,
682- ( 7 , self . general_bucket, required) ,
683- ( 9 , self . congestion_bucket, required) ,
684- ( 11 , self . last_congestion_misuse, required) ,
685- ( 13 , self . protected_bucket, required) ,
686- } ) ;
687-
688- Ok ( ( ) )
689- }
690- }
691-
692- impl Readable for Channel {
693- fn read < R : Read > ( reader : & mut R ) -> Result < Channel , DecodeError > {
694- _init_and_read_len_prefixed_tlv_fields ! ( reader, {
695- ( 1 , outgoing_reputation, required) ,
696- ( 3 , incoming_revenue, required) ,
697- ( 5 , pending_htlcs, required) ,
698- ( 7 , general_bucket, required) ,
699- ( 9 , congestion_bucket, required) ,
700- ( 11 , last_congestion_misuse, required) ,
701- ( 13 , protected_bucket, required) ,
702- } ) ;
703-
704- Ok ( Channel {
705- outgoing_reputation : outgoing_reputation. 0 . unwrap ( ) ,
706- incoming_revenue : incoming_revenue. 0 . unwrap ( ) ,
707- pending_htlcs : pending_htlcs. 0 . unwrap ( ) ,
708- general_bucket : general_bucket. 0 . unwrap ( ) ,
709- congestion_bucket : congestion_bucket. 0 . unwrap ( ) ,
710- last_congestion_misuse : last_congestion_misuse. 0 . unwrap ( ) ,
711- protected_bucket : protected_bucket. 0 . unwrap ( ) ,
712- } )
713- }
714- }
676+ impl_writeable_tlv_based ! ( Channel , {
677+ ( 1 , outgoing_reputation, required) ,
678+ ( 3 , incoming_revenue, required) ,
679+ ( 5 , pending_htlcs, required) ,
680+ ( 7 , general_bucket, required) ,
681+ ( 9 , congestion_bucket, required) ,
682+ ( 11 , last_congestion_misuse, required) ,
683+ ( 13 , protected_bucket, required) ,
684+ } ) ;
715685
716686/// An implementation of [`ResourceManager`] for managing channel resources and informing HTLC
717687/// forwarding decisions. It implements the core of the mitigation as proposed in
0 commit comments