File tree Expand file tree Collapse file tree 2 files changed +6
-4
lines changed
Expand file tree Collapse file tree 2 files changed +6
-4
lines changed Original file line number Diff line number Diff line change @@ -78,7 +78,7 @@ pub fn render(
7878 } ) ;
7979 }
8080
81- if access == Access :: WriteOnly || access == Access :: ReadWrite {
81+ if [ Access :: WriteOnly , Access :: WriteOnce , Access :: ReadWrite ] . contains ( & access ) {
8282 reg_impl_items. push ( quote ! {
8383 /// Writes to the register
8484 #[ inline]
@@ -165,7 +165,7 @@ pub fn render(
165165 } ) ;
166166 }
167167
168- if access == Access :: WriteOnly || access == Access :: ReadWrite {
168+ if [ Access :: WriteOnly , Access :: WriteOnce , Access :: ReadWrite ] . contains ( & access ) {
169169 mod_items. push ( quote ! {
170170 impl W {
171171 #( #w_impl_items) *
@@ -556,7 +556,7 @@ pub fn fields(
556556 }
557557 }
558558
559- if access == Access :: WriteOnly || access == Access :: ReadWrite {
559+ if [ Access :: WriteOnly , Access :: WriteOnce , Access :: ReadWrite ] . contains ( & access ) {
560560 for f in & fs {
561561 if f. access == Some ( Access :: ReadOnly ) {
562562 continue ;
Original file line number Diff line number Diff line change @@ -200,7 +200,9 @@ pub fn access_of(register: &Register) -> Access {
200200 if let Some ( fields) = & register. fields {
201201 if fields. iter ( ) . all ( |f| f. access == Some ( Access :: ReadOnly ) ) {
202202 Access :: ReadOnly
203- } else if fields. iter ( ) . all ( |f| f. access == Some ( Access :: WriteOnly ) ) {
203+ } else if fields. iter ( ) . all ( |f| f. access == Some ( Access :: WriteOnce ) ) {
204+ Access :: WriteOnce
205+ } else if fields. iter ( ) . all ( |f| f. access == Some ( Access :: WriteOnly ) || f. access == Some ( Access :: WriteOnce ) ) {
204206 Access :: WriteOnly
205207 } else {
206208 Access :: ReadWrite
You can’t perform that action at this time.
0 commit comments