@@ -20,8 +20,10 @@ fn run(
20
20
let fold = fold:: fold ( {
21
21
fold_mod: fold_mod,
22
22
fold_fn: fold_fn,
23
+ fold_const: fold_const,
23
24
fold_modlist: fold_modlist,
24
- fold_fnlist: fold_fnlist
25
+ fold_fnlist: fold_fnlist,
26
+ fold_constlist: fold_constlist
25
27
with * fold:: default_seq_fold ( ctxt)
26
28
} ) ;
27
29
fold. fold_crate ( fold, doc)
@@ -109,7 +111,7 @@ fn fold_modlist(
109
111
list : doc:: modlist
110
112
) -> doc:: modlist {
111
113
doc:: modlist ( vec:: filter_map ( * list) { |doc|
112
- let doc = fold_mod ( fold, doc) ;
114
+ let doc = fold . fold_mod ( fold, doc) ;
113
115
if fold. ctxt . have_docs {
114
116
some ( doc)
115
117
} else {
@@ -152,7 +154,7 @@ fn fold_fnlist(
152
154
list : doc:: fnlist
153
155
) -> doc:: fnlist {
154
156
doc:: fnlist ( vec:: filter_map ( * list) { |doc|
155
- let doc = fold_fn ( fold, doc) ;
157
+ let doc = fold . fold_fn ( fold, doc) ;
156
158
if fold. ctxt . have_docs {
157
159
some ( doc)
158
160
} else {
@@ -169,3 +171,37 @@ fn should_elide_undocumented_fns() {
169
171
let doc = run ( srv, doc) ;
170
172
assert vec:: is_empty ( * doc. topmod . fns ) ;
171
173
}
174
+
175
+ fn fold_const (
176
+ fold : fold:: fold < ctxt > ,
177
+ doc : doc:: constdoc
178
+ ) -> doc:: constdoc {
179
+ let doc = fold:: default_seq_fold_const ( fold, doc) ;
180
+ fold. ctxt . have_docs =
181
+ doc. brief != none
182
+ || doc. desc != none;
183
+ ret doc;
184
+ }
185
+
186
+ fn fold_constlist (
187
+ fold : fold:: fold < ctxt > ,
188
+ list : doc:: constlist
189
+ ) -> doc:: constlist {
190
+ doc:: constlist ( vec:: filter_map ( * list) { |doc|
191
+ let doc = fold. fold_const ( fold, doc) ;
192
+ if fold. ctxt . have_docs {
193
+ some ( doc)
194
+ } else {
195
+ none
196
+ }
197
+ } )
198
+ }
199
+
200
+ #[ test]
201
+ fn should_elide_undocumented_consts ( ) {
202
+ let source = "const a: bool = true;" ;
203
+ let srv = astsrv:: mk_srv_from_str ( source) ;
204
+ let doc = extract:: from_srv ( srv, "" ) ;
205
+ let doc = run ( srv, doc) ;
206
+ assert vec:: is_empty ( * doc. topmod . consts ) ;
207
+ }
0 commit comments