@@ -109,15 +109,15 @@ pub fn render(
109
109
} ;
110
110
111
111
let mut alias_doc = format ! (
112
- "{name} ({accs}) register accessor: {description}\n \n {}" ,
112
+ "{name} ({accs}) register accessor: {description}{} {}" ,
113
113
api_docs(
114
114
access. can_read( ) ,
115
115
access. can_write( ) ,
116
116
register. properties. reset_value. is_some( ) ,
117
117
& mod_ty,
118
118
false ,
119
- register . read_action ,
120
- ) ?
119
+ ) ? ,
120
+ read_action_docs ( access . can_read ( ) , register . read_action ) ,
121
121
) ;
122
122
alias_doc +=
123
123
format ! ( "\n \n For information about available fields see [`mod@{mod_ty}`] module" )
@@ -147,38 +147,43 @@ pub fn render(
147
147
}
148
148
}
149
149
150
+ fn read_action_docs ( can_read : bool , read_action : Option < ReadAction > ) -> String {
151
+ let mut doc = String :: new ( ) ;
152
+ if can_read {
153
+ if let Some ( action) = read_action {
154
+ doc. push_str ( "\n \n <div class=\" warning\" >" ) ;
155
+ doc. push_str ( match action {
156
+ ReadAction :: Clear => "The register is <b>cleared</b> (set to zero) following a read operation." ,
157
+ ReadAction :: Set => "The register is <b>set</b> (set to ones) following a read operation." ,
158
+ ReadAction :: Modify => "The register is <b>modified</b> in some way after a read operation." ,
159
+ ReadAction :: ModifyExternal => "One or more dependent resources other than the current register are immediately affected by a read operation." ,
160
+ } ) ;
161
+ doc. push_str ( "</div>" ) ;
162
+ }
163
+ }
164
+ doc
165
+ }
166
+
150
167
fn api_docs (
151
168
can_read : bool ,
152
169
can_write : bool ,
153
170
can_reset : bool ,
154
171
module : & Ident ,
155
172
inmodule : bool ,
156
- read_action : Option < ReadAction > ,
157
173
) -> Result < String , std:: fmt:: Error > {
158
174
fn method ( s : & str ) -> String {
159
175
format ! ( "[`{s}`](crate::Reg::{s})" )
160
176
}
161
177
162
- let mut doc = String :: new ( ) ;
178
+ let mut doc = String :: from ( " \n \n " ) ;
163
179
164
180
if can_read {
165
181
write ! (
166
182
doc,
167
- "You can {} this register and get [`{module}::R`]{}." ,
183
+ "You can {} this register and get [`{module}::R`]{}. " ,
168
184
method( "read" ) ,
169
185
if inmodule { "(R)" } else { "" } ,
170
186
) ?;
171
-
172
- if let Some ( action) = read_action {
173
- doc. push_str ( " WARN: " ) ;
174
- doc. push_str ( match action {
175
- ReadAction :: Clear => "The register is **cleared** (set to zero) following a read operation." ,
176
- ReadAction :: Set => "The register is **set** (set to ones) following a read operation." ,
177
- ReadAction :: Modify => "The register is **modified** in some way after a read operation." ,
178
- ReadAction :: ModifyExternal => "One or more dependent resources other than the current register are immediately affected by a read operation." ,
179
- } ) ;
180
- }
181
- doc. push ( ' ' ) ;
182
187
}
183
188
184
189
if can_write {
@@ -355,15 +360,9 @@ pub fn render_register_mod(
355
360
}
356
361
357
362
let doc = format ! (
358
- "{description}\n \n {}" ,
359
- api_docs(
360
- can_read,
361
- can_write,
362
- can_reset,
363
- & mod_ty,
364
- true ,
365
- register. read_action,
366
- ) ?
363
+ "{description}{}{}" ,
364
+ api_docs( can_read, can_write, can_reset, & mod_ty, true ) ?,
365
+ read_action_docs( access. can_read( ) , register. read_action) ,
367
366
) ;
368
367
369
368
mod_items. extend ( quote ! {
@@ -951,12 +950,14 @@ pub fn fields(
951
950
} ;
952
951
let mut readerdoc = field_reader_brief. clone ( ) ;
953
952
if let Some ( action) = f. read_action {
954
- readerdoc += match action {
955
- ReadAction :: Clear => "\n \n The field is **cleared** (set to zero) following a read operation." ,
956
- ReadAction :: Set => "\n \n The field is **set** (set to ones) following a read operation." ,
957
- ReadAction :: Modify => "\n \n The field is **modified** in some way after a read operation." ,
958
- ReadAction :: ModifyExternal => "\n \n One or more dependent resources other than the current field are immediately affected by a read operation." ,
959
- } ;
953
+ readerdoc. push_str ( "\n \n <div class=\" warning\" >" ) ;
954
+ readerdoc. push_str ( match action {
955
+ ReadAction :: Clear => "The field is <b>cleared</b> (set to zero) following a read operation." ,
956
+ ReadAction :: Set => "The field is <b>set</b> (set to ones) following a read operation." ,
957
+ ReadAction :: Modify => "The field is <b>modified</b> in some way after a read operation." ,
958
+ ReadAction :: ModifyExternal => "One or more dependent resources other than the current field are immediately affected by a read operation." ,
959
+ } ) ;
960
+ readerdoc. push_str ( "</div>" ) ;
960
961
}
961
962
mod_items. extend ( quote ! {
962
963
#[ doc = #readerdoc]
@@ -992,7 +993,7 @@ pub fn fields(
992
993
let increment = de. dim_increment ;
993
994
let doc = description. expand_dim ( & brief_suffix) ;
994
995
let first_name = svd:: array:: names ( f, de) . next ( ) . unwrap ( ) ;
995
- let note = format ! ( "NOTE: `n` is number of field in register. `n == 0` corresponds to `{first_name}` field" ) ;
996
+ let note = format ! ( "<div class= \" warning \" > `n` is number of field in register. `n == 0` corresponds to `{first_name}` field.</div> " ) ;
996
997
let offset_calc = calculate_offset ( increment, offset, true ) ;
997
998
let value = quote ! { ( ( self . bits >> #offset_calc) & #hexmask) #cast } ;
998
999
let dim = unsuffixed ( de. dim ) ;
@@ -1279,7 +1280,7 @@ pub fn fields(
1279
1280
let offset_calc = calculate_offset ( increment, offset, false ) ;
1280
1281
let doc = & description. expand_dim ( & brief_suffix) ;
1281
1282
let first_name = svd:: array:: names ( f, de) . next ( ) . unwrap ( ) ;
1282
- let note = format ! ( "NOTE: `n` is number of field in register. `n == 0` corresponds to `{first_name}` field" ) ;
1283
+ let note = format ! ( "<div class= \" warning \" > `n` is number of field in register. `n == 0` corresponds to `{first_name}` field.</div> " ) ;
1283
1284
let dim = unsuffixed ( de. dim ) ;
1284
1285
w_impl_items. extend ( quote ! {
1285
1286
#[ doc = #doc]
0 commit comments