@@ -545,7 +545,7 @@ pub fn fields(
545545 if let Some ( ( evs, None ) ) = lookup_filter ( & lookup_results, Usage :: Read ) {
546546 // we have enumeration for read, record this. If the enumeration for write operation
547547 // later on is the same as the read enumeration, we reuse and do not generate again.
548- evs_r = Some ( evs. clone ( ) ) ;
548+ evs_r = Some ( evs) ;
549549
550550 // do we have finite definition of this enumeration in svd? If not, the later code would
551551 // return an Option when the value read from field does not match any defined values.
@@ -647,7 +647,7 @@ pub fn fields(
647647 // if necessary.
648648 if let Some ( ( evs, Some ( base) ) ) = lookup_filter ( & lookup_results, Usage :: Read ) {
649649 // preserve value; if read type equals write type, writer would not generate value type again
650- evs_r = Some ( evs. clone ( ) ) ;
650+ evs_r = Some ( evs) ;
651651 // generate pub use field_1 reader as field_2 reader
652652 let base_field = util:: replace_suffix ( & base. field . name , "" ) ;
653653 let base_r = ( base_field + "_R" ) . to_constant_case_ident ( span) ;
@@ -759,7 +759,7 @@ pub fn fields(
759759
760760 let value_write_ty =
761761 if let Some ( ( evs, _) ) = lookup_filter ( & lookup_results, Usage :: Write ) {
762- let writer_reader_different_enum = evs_r. as_ref ( ) != Some ( evs) ;
762+ let writer_reader_different_enum = evs_r != Some ( evs) ;
763763 let ty_suffix = if writer_reader_different_enum {
764764 "AW"
765765 } else {
@@ -794,7 +794,7 @@ pub fn fields(
794794
795795 // does the read and the write value has the same name? If we have the same,
796796 // we can reuse read value type other than generating a new one.
797- let writer_reader_different_enum = evs_r. as_ref ( ) != Some ( evs) ;
797+ let writer_reader_different_enum = evs_r != Some ( evs) ;
798798
799799 // generate write value structure and From conversation if we can't reuse read value structure.
800800 if writer_reader_different_enum {
@@ -816,7 +816,7 @@ pub fn fields(
816816 for v in & variants {
817817 let pc = & v. pc ;
818818 let sc = & v. sc ;
819- let doc = util:: escape_brackets ( util:: respace ( & v. doc ) . as_ref ( ) ) ;
819+ let doc = util:: escape_brackets ( & util:: respace ( & v. doc ) ) ;
820820 proxy_items. extend ( quote ! {
821821 #[ doc = #doc]
822822 #inline
@@ -885,7 +885,7 @@ pub fn fields(
885885 if let Some ( ( evs, Some ( base) ) ) = lookup_filter ( & lookup_results, Usage :: Write ) {
886886 // if base.register == None, it emits pub use structure from same module.
887887 if base. register ( ) != fpath. register ( ) {
888- let writer_reader_different_enum = evs_r. as_ref ( ) != Some ( evs) ;
888+ let writer_reader_different_enum = evs_r != Some ( evs) ;
889889 if writer_reader_different_enum {
890890 // use the same enum structure name
891891 if !writer_enum_derives. contains ( & value_write_ty) {
0 commit comments