@@ -483,21 +483,16 @@ pub fn fields(
483483 } ;
484484 let value = if offset != 0 {
485485 let offset = & util:: unsuffixed ( offset) ;
486- quote ! {
487- ( ( self . bits >> #offset) & #hexmask) #cast
488- }
489- } else if use_cast {
490- quote ! {
491- ( self . bits & #hexmask) #cast
492- }
486+ quote ! { ( self . bits >> #offset) }
487+ } else {
488+ quote ! { self . bits }
489+ } ;
490+ let value = if use_mask && use_cast {
491+ quote ! { ( #value & #hexmask) #cast }
493492 } else if use_mask {
494- quote ! {
495- self . bits & #hexmask
496- }
493+ quote ! { #value & #hexmask }
497494 } else {
498- quote ! {
499- self . bits
500- }
495+ value
501496 } ;
502497
503498 // get a brief description for this field
@@ -719,21 +714,16 @@ pub fn fields(
719714 let sub_offset = offset + ( i as u64 ) * ( increment as u64 ) ;
720715 let value = if sub_offset != 0 {
721716 let sub_offset = & util:: unsuffixed ( sub_offset) ;
722- quote ! {
723- ( ( self . bits >> #sub_offset) & #hexmask) #cast
724- }
725- } else if use_cast {
726- quote ! {
727- ( self . bits & #hexmask) #cast
728- }
717+ quote ! { ( self . bits >> #sub_offset) }
718+ } else {
719+ quote ! { self . bits }
720+ } ;
721+ let value = if use_mask && use_cast {
722+ quote ! { ( #value & #hexmask) #cast }
729723 } else if use_mask {
730- quote ! {
731- self . bits & #hexmask
732- }
724+ quote ! { #value & #hexmask }
733725 } else {
734- quote ! {
735- self . bits
736- }
726+ value
737727 } ;
738728 let name_snake_case_n = util:: replace_suffix ( & f. name , & suffix)
739729 . to_snake_case_ident ( Span :: call_site ( ) ) ;
@@ -963,7 +953,7 @@ pub fn fields(
963953 & description_with_bits ( description_raw, sub_offset, width) ,
964954 & suffix,
965955 ) ;
966- let sub_offset = util:: unsuffixed ( sub_offset as u64 ) ;
956+ let sub_offset = util:: unsuffixed ( sub_offset) ;
967957
968958 w_impl_items. extend ( quote ! {
969959 #[ doc = #doc]
@@ -976,7 +966,7 @@ pub fn fields(
976966 }
977967 } else {
978968 let doc = description_with_bits ( description_raw, offset, width) ;
979- let offset = util:: unsuffixed ( offset as u64 ) ;
969+ let offset = util:: unsuffixed ( offset) ;
980970 w_impl_items. extend ( quote ! {
981971 #[ doc = #doc]
982972 #inline
@@ -1037,7 +1027,7 @@ impl Variant {
10371027 . iter ( )
10381028 // filter out all reserved variants, as we should not
10391029 // generate code for them
1040- . filter ( |field| field. name . to_lowercase ( ) != "reserved" && field. is_default == None )
1030+ . filter ( |field| field. name . to_lowercase ( ) != "reserved" && field. is_default . is_none ( ) )
10411031 . map ( |ev| {
10421032 let value = ev
10431033 . value
0 commit comments