@@ -237,6 +237,26 @@ fn commasep_cmnt[IN](&ps s, breaks b, vec[IN] elts, fn(&ps, &IN) op,
237
237
end ( s) ;
238
238
}
239
239
240
+ // TODO: Remove me.
241
+ fn commasep_cmnt_ivec[ IN ] ( & ps s, breaks b, & IN [ ] elts, fn ( & ps, & IN ) op,
242
+ fn ( & IN ) -> codemap:: span get_span) {
243
+ box ( s, 0 u, b) ;
244
+ auto len = ivec:: len[ IN ] ( elts) ;
245
+ auto i = 0 u;
246
+ for ( IN elt in elts) {
247
+ maybe_print_comment ( s, get_span ( elt) . hi ) ;
248
+ op ( s, elt) ;
249
+ i += 1 u;
250
+ if ( i < len) {
251
+ word ( s. s , "," ) ;
252
+ maybe_print_trailing_comment ( s, get_span ( elt) ,
253
+ some ( get_span ( elts. ( i) ) . hi ) ) ;
254
+ space_if_not_hardbreak ( s) ;
255
+ }
256
+ }
257
+ end ( s) ;
258
+ }
259
+
240
260
fn commasep_exprs ( & ps s, breaks b, vec[ @ast:: expr] exprs ) {
241
261
fn expr_span ( & @ast:: expr expr) -> codemap:: span { ret expr. span ; }
242
262
commasep_cmnt ( s, b, exprs, print_expr, expr_span) ;
@@ -315,7 +335,7 @@ fn print_type(&ps s, &ast::ty ty) {
315
335
end ( s) ;
316
336
}
317
337
fn get_span ( & ast:: ty_field f) -> codemap:: span { ret f. span ; }
318
- commasep_cmnt ( s, consistent, fields, print_field, get_span) ;
338
+ commasep_cmnt_ivec ( s, consistent, fields, print_field, get_span) ;
319
339
pclose ( s) ;
320
340
}
321
341
case ( ast:: ty_fn ( ?proto, ?inputs, ?output, ?cf, ?constrs) ) {
@@ -1214,7 +1234,7 @@ fn print_mt(&ps s, &ast::mt mt) {
1214
1234
}
1215
1235
1216
1236
fn print_ty_fn ( & ps s, & ast:: proto proto, & option:: t[ str] id ,
1217
- & vec [ ast:: ty_arg ] inputs , & @ast:: ty output ,
1237
+ & ast:: ty_arg[ ] inputs, & @ast:: ty output,
1218
1238
& ast:: controlflow cf, & vec[ @ast:: constr] constrs ) {
1219
1239
ibox ( s, indent_unit) ;
1220
1240
if ( proto == ast:: proto_fn) {
@@ -1230,7 +1250,7 @@ fn print_ty_fn(&ps s, &ast::proto proto, &option::t[str] id,
1230
1250
print_alias ( s, input. node . mode ) ;
1231
1251
print_type ( s, * input. node . ty ) ;
1232
1252
}
1233
- commasep ( s, inconsistent, inputs, print_arg) ;
1253
+ commasep_ivec ( s, inconsistent, inputs, print_arg) ;
1234
1254
pclose ( s) ;
1235
1255
maybe_print_comment ( s, output. span . lo ) ;
1236
1256
if ( output. node != ast:: ty_nil) {
0 commit comments