@@ -49,7 +49,10 @@ fn fold_crate(
49
49
50
50
{
51
51
topmod : {
52
- name : option:: from_maybe ( doc. topmod . name , attrs. name )
52
+ item : {
53
+ name: option:: from_maybe ( doc. topmod . name ( ) , attrs. name )
54
+ with doc. topmod . item
55
+ }
53
56
with doc. topmod
54
57
}
55
58
}
@@ -58,7 +61,7 @@ fn fold_crate(
58
61
#[ test]
59
62
fn should_replace_top_module_name_with_crate_name ( ) {
60
63
let doc = test:: mk_doc ( "#[link(name = \" bond\" )];" ) ;
61
- assert doc. topmod . name == "bond" ;
64
+ assert doc. topmod . name ( ) == "bond" ;
62
65
}
63
66
64
67
fn parse_item_attrs < T > (
@@ -78,13 +81,13 @@ fn parse_item_attrs<T>(
78
81
79
82
fn fold_mod ( fold : fold:: fold < astsrv:: srv > , doc : doc:: moddoc ) -> doc:: moddoc {
80
83
let srv = fold. ctxt ;
81
- let attrs = if doc. id == ast:: crate_node_id {
84
+ let attrs = if doc. id ( ) == ast:: crate_node_id {
82
85
// This is the top-level mod, use the crate attributes
83
86
astsrv:: exec ( srv) { |ctxt|
84
87
attr_parser:: parse_mod ( ctxt. ast . node . attrs )
85
88
}
86
89
} else {
87
- parse_item_attrs ( srv, doc. id , attr_parser:: parse_mod)
90
+ parse_item_attrs ( srv, doc. id ( ) , attr_parser:: parse_mod)
88
91
} ;
89
92
let doc = fold:: default_seq_fold_mod ( fold, doc) ;
90
93
ret merge_mod_attrs ( doc, attrs) ;
@@ -94,8 +97,11 @@ fn fold_mod(fold: fold::fold<astsrv::srv>, doc: doc::moddoc) -> doc::moddoc {
94
97
attrs : attr_parser:: mod_attrs
95
98
) -> doc:: moddoc {
96
99
{
97
- brief: attrs. brief ,
98
- desc: attrs. desc
100
+ item : {
101
+ brief : attrs. brief ,
102
+ desc : attrs. desc
103
+ with doc. item
104
+ }
99
105
with doc
100
106
}
101
107
}
@@ -104,13 +110,13 @@ fn fold_mod(fold: fold::fold<astsrv::srv>, doc: doc::moddoc) -> doc::moddoc {
104
110
#[ test]
105
111
fn fold_mod_should_extract_mod_attributes ( ) {
106
112
let doc = test:: mk_doc ( "#[doc = \" test\" ] mod a { }" ) ;
107
- assert doc. topmod . mods ( ) [ 0 ] . desc == some ( "test" ) ;
113
+ assert doc. topmod . mods ( ) [ 0 ] . desc ( ) == some ( "test" ) ;
108
114
}
109
115
110
116
#[ test]
111
117
fn fold_mod_should_extract_top_mod_attributes ( ) {
112
118
let doc = test:: mk_doc ( "#[doc = \" test\" ];" ) ;
113
- assert doc. topmod . desc == some ( "test" ) ;
119
+ assert doc. topmod . desc ( ) == some ( "test" ) ;
114
120
}
115
121
116
122
fn fold_fn (
@@ -120,16 +126,19 @@ fn fold_fn(
120
126
121
127
let srv = fold. ctxt ;
122
128
123
- let attrs = parse_item_attrs ( srv, doc. id , attr_parser:: parse_fn) ;
129
+ let attrs = parse_item_attrs ( srv, doc. id ( ) , attr_parser:: parse_fn) ;
124
130
ret merge_fn_attrs ( doc, attrs) ;
125
131
126
132
fn merge_fn_attrs (
127
133
doc : doc:: fndoc ,
128
134
attrs : attr_parser:: fn_attrs
129
135
) -> doc:: fndoc {
130
136
ret {
131
- brief : attrs. brief ,
132
- desc : attrs. desc ,
137
+ item : {
138
+ brief: attrs. brief ,
139
+ desc : attrs. desc
140
+ with doc. item
141
+ } ,
133
142
args: merge_arg_attrs ( doc. args , attrs. args ) ,
134
143
return : merge_ret_attrs ( doc. return , attrs. return ) ,
135
144
failure: attrs. failure
@@ -172,7 +181,7 @@ fn merge_ret_attrs(
172
181
#[ test]
173
182
fn fold_fn_should_extract_fn_attributes ( ) {
174
183
let doc = test:: mk_doc ( "#[doc = \" test\" ] fn a() -> int { }" ) ;
175
- assert doc. topmod . fns ( ) [ 0 ] . desc == some ( "test" ) ;
184
+ assert doc. topmod . fns ( ) [ 0 ] . desc ( ) == some ( "test" ) ;
176
185
}
177
186
178
187
#[ test]
@@ -214,11 +223,14 @@ fn fold_const(
214
223
doc : doc:: constdoc
215
224
) -> doc:: constdoc {
216
225
let srv = fold. ctxt ;
217
- let attrs = parse_item_attrs ( srv, doc. id , attr_parser:: parse_const) ;
226
+ let attrs = parse_item_attrs ( srv, doc. id ( ) , attr_parser:: parse_const) ;
218
227
219
228
{
220
- brief: attrs. brief ,
221
- desc: attrs. desc
229
+ item : {
230
+ brief : attrs. brief ,
231
+ desc : attrs. desc
232
+ with doc. item
233
+ }
222
234
with doc
223
235
}
224
236
}
@@ -227,23 +239,26 @@ fn fold_const(
227
239
fn fold_const_should_extract_docs ( ) {
228
240
let doc = test:: mk_doc ( "#[doc(brief = \" foo\" , desc = \" bar\" )]\
229
241
const a: bool = true;") ;
230
- assert doc. topmod . consts ( ) [ 0 ] . brief == some ( "foo" ) ;
231
- assert doc. topmod . consts ( ) [ 0 ] . desc == some ( "bar" ) ;
242
+ assert doc. topmod . consts ( ) [ 0 ] . brief ( ) == some ( "foo" ) ;
243
+ assert doc. topmod . consts ( ) [ 0 ] . desc ( ) == some ( "bar" ) ;
232
244
}
233
245
234
246
fn fold_enum (
235
247
fold : fold:: fold < astsrv:: srv > ,
236
248
doc : doc:: enumdoc
237
249
) -> doc:: enumdoc {
238
250
let srv = fold. ctxt ;
239
- let attrs = parse_item_attrs ( srv, doc. id , attr_parser:: parse_enum) ;
251
+ let attrs = parse_item_attrs ( srv, doc. id ( ) , attr_parser:: parse_enum) ;
240
252
241
253
{
242
- brief: attrs. brief ,
243
- desc: attrs. desc ,
254
+ item : {
255
+ brief : attrs. brief ,
256
+ desc : attrs. desc
257
+ with doc. item
258
+ } ,
244
259
variants: vec:: map ( doc. variants ) { |variant|
245
260
let attrs = astsrv:: exec ( srv) { |ctxt|
246
- alt check ctxt. ast_map . get ( doc. id ) {
261
+ alt check ctxt. ast_map . get ( doc. id ( ) ) {
247
262
ast_map:: node_item ( @{
248
263
node: ast:: item_enum ( ast_variants, _) , _
249
264
} , _) {
@@ -270,8 +285,8 @@ fn fold_enum(
270
285
fn fold_enum_should_extract_docs ( ) {
271
286
let doc = test:: mk_doc ( "#[doc(brief = \" a\" , desc = \" b\" )]\
272
287
enum a { v }") ;
273
- assert doc. topmod . enums ( ) [ 0 ] . brief == some ( "a" ) ;
274
- assert doc. topmod . enums ( ) [ 0 ] . desc == some ( "b" ) ;
288
+ assert doc. topmod . enums ( ) [ 0 ] . brief ( ) == some ( "a" ) ;
289
+ assert doc. topmod . enums ( ) [ 0 ] . desc ( ) == some ( "b" ) ;
275
290
}
276
291
277
292
#[ test]
@@ -286,11 +301,14 @@ fn fold_res(
286
301
) -> doc:: resdoc {
287
302
288
303
let srv = fold. ctxt ;
289
- let attrs = parse_item_attrs ( srv, doc. id , attr_parser:: parse_fn) ;
304
+ let attrs = parse_item_attrs ( srv, doc. id ( ) , attr_parser:: parse_fn) ;
290
305
291
306
{
292
- brief: attrs. brief ,
293
- desc: attrs. desc ,
307
+ item : {
308
+ brief : attrs. brief ,
309
+ desc : attrs. desc
310
+ with doc. item
311
+ } ,
294
312
args: vec:: map ( doc. args ) { |doc|
295
313
alt vec:: find ( attrs. args ) { |attr|
296
314
attr. name == doc. name
@@ -312,8 +330,8 @@ fn fold_res(
312
330
fn fold_res_should_extract_docs ( ) {
313
331
let doc = test:: mk_doc ( "#[doc(brief = \" a\" , desc = \" b\" )]\
314
332
resource r(b: bool) { }") ;
315
- assert doc. topmod . resources ( ) [ 0 ] . brief == some ( "a" ) ;
316
- assert doc. topmod . resources ( ) [ 0 ] . desc == some ( "b" ) ;
333
+ assert doc. topmod . resources ( ) [ 0 ] . brief ( ) == some ( "a" ) ;
334
+ assert doc. topmod . resources ( ) [ 0 ] . desc ( ) == some ( "b" ) ;
317
335
}
318
336
319
337
#[ test]
@@ -330,12 +348,15 @@ fn fold_iface(
330
348
) -> doc:: ifacedoc {
331
349
let srv = fold. ctxt ;
332
350
let doc = fold:: default_seq_fold_iface ( fold, doc) ;
333
- let attrs = parse_item_attrs ( srv, doc. id , attr_parser:: parse_iface) ;
351
+ let attrs = parse_item_attrs ( srv, doc. id ( ) , attr_parser:: parse_iface) ;
334
352
335
353
{
336
- brief: attrs. brief ,
337
- desc: attrs. desc ,
338
- methods: merge_method_attrs ( srv, doc. id , doc. methods )
354
+ item : {
355
+ brief : attrs. brief ,
356
+ desc : attrs. desc
357
+ with doc. item
358
+ } ,
359
+ methods: merge_method_attrs ( srv, doc. id ( ) , doc. methods )
339
360
with doc
340
361
}
341
362
}
@@ -384,7 +405,7 @@ fn merge_method_attrs(
384
405
#[ test]
385
406
fn should_extract_iface_docs ( ) {
386
407
let doc = test:: mk_doc ( "#[doc = \" whatever\" ] iface i { fn a(); }" ) ;
387
- assert doc. topmod . ifaces ( ) [ 0 ] . desc == some ( "whatever" ) ;
408
+ assert doc. topmod . ifaces ( ) [ 0 ] . desc ( ) == some ( "whatever" ) ;
388
409
}
389
410
390
411
#[ test]
@@ -413,12 +434,15 @@ fn fold_impl(
413
434
) -> doc:: impldoc {
414
435
let srv = fold. ctxt ;
415
436
let doc = fold:: default_seq_fold_impl ( fold, doc) ;
416
- let attrs = parse_item_attrs ( srv, doc. id , attr_parser:: parse_impl) ;
437
+ let attrs = parse_item_attrs ( srv, doc. id ( ) , attr_parser:: parse_impl) ;
417
438
418
439
{
419
- brief: attrs. brief ,
420
- desc: attrs. desc ,
421
- methods: merge_method_attrs ( srv, doc. id , doc. methods )
440
+ item : {
441
+ brief : attrs. brief ,
442
+ desc : attrs. desc
443
+ with doc. item
444
+ } ,
445
+ methods: merge_method_attrs ( srv, doc. id ( ) , doc. methods )
422
446
with doc
423
447
}
424
448
}
@@ -427,7 +451,7 @@ fn fold_impl(
427
451
fn should_extract_impl_docs ( ) {
428
452
let doc = test:: mk_doc (
429
453
"#[doc = \" whatever\" ] impl i for int { fn a() { } }" ) ;
430
- assert doc. topmod . impls ( ) [ 0 ] . desc == some ( "whatever" ) ;
454
+ assert doc. topmod . impls ( ) [ 0 ] . desc ( ) == some ( "whatever" ) ;
431
455
}
432
456
433
457
#[ test]
@@ -455,11 +479,14 @@ fn fold_type(
455
479
) -> doc:: tydoc {
456
480
let srv = fold. ctxt ;
457
481
let doc = fold:: default_seq_fold_type ( fold, doc) ;
458
- let attrs = parse_item_attrs ( srv, doc. id , attr_parser:: parse_type) ;
482
+ let attrs = parse_item_attrs ( srv, doc. id ( ) , attr_parser:: parse_type) ;
459
483
460
484
{
461
- brief: attrs. brief ,
462
- desc: attrs. desc
485
+ item : {
486
+ brief : attrs. brief ,
487
+ desc : attrs. desc
488
+ with doc. item
489
+ }
463
490
with doc
464
491
}
465
492
}
@@ -469,8 +496,8 @@ fn should_extract_type_docs() {
469
496
let doc = test:: mk_doc (
470
497
"#[doc(brief = \" brief\" , desc = \" desc\" )]\
471
498
type t = int;") ;
472
- assert doc. topmod . types ( ) [ 0 ] . brief == some ( "brief" ) ;
473
- assert doc. topmod . types ( ) [ 0 ] . desc == some ( "desc" ) ;
499
+ assert doc. topmod . types ( ) [ 0 ] . brief ( ) == some ( "brief" ) ;
500
+ assert doc. topmod . types ( ) [ 0 ] . desc ( ) == some ( "desc" ) ;
474
501
}
475
502
476
503
#[ cfg( test) ]
0 commit comments