@@ -43,26 +43,26 @@ fn no_ann() -> pp_ann {
43
43
type ps =
44
44
@rec ( pp:: printer s,
45
45
option:: t[ codemap] cm ,
46
- option:: t[ vec [ lexer:: cmnt ] ] comments ,
47
- option:: t[ vec [ lexer:: lit ] ] literals ,
46
+ option:: t[ lexer:: cmnt [ ] ] comments ,
47
+ option:: t[ lexer:: lit [ ] ] literals ,
48
48
mutable uint cur_cmnt ,
49
49
mutable uint cur_lit,
50
- mutable vec [ pp:: breaks ] boxes ,
50
+ mutable pp:: breaks[ ] boxes,
51
51
pp_ann ann) ;
52
52
53
53
fn ibox( & ps s, uint u) {
54
- vec :: push ( s. boxes , pp:: inconsistent) ;
54
+ s. boxes += ~ [ pp:: inconsistent ] ;
55
55
pp:: ibox ( s. s , u) ;
56
56
}
57
57
58
- fn end ( & ps s) { vec :: pop ( s. boxes ) ; pp:: end ( s. s ) ; }
58
+ fn end( & ps s) { ivec :: pop ( s. boxes ) ; pp:: end ( s. s ) ; }
59
59
60
60
fn rust_printer ( io:: writer writer) -> ps {
61
- let vec [ pp:: breaks] boxes = [ ] ;
61
+ let pp:: breaks [ ] boxes = ~ [ ] ;
62
62
ret @rec( s=pp:: mk_printer( writer, default_columns) ,
63
63
cm=none[ codemap] ,
64
- comments=none[ vec [ lexer:: cmnt] ] ,
65
- literals=none[ vec [ lexer:: lit] ] ,
64
+ comments=none[ lexer:: cmnt[ ] ] ,
65
+ literals=none[ lexer:: lit[ ] ] ,
66
66
mutable cur_cmnt=0 u,
67
67
mutable cur_lit=0 u,
68
68
mutable boxes=boxes,
@@ -75,7 +75,7 @@ const uint default_columns = 78u;
75
75
76
76
fn print_crate( & codemap cm, @ast:: crate crate, str filename,
77
77
io:: writer out, & pp_ann ann) {
78
- let vec [ pp:: breaks] boxes = [ ] ;
78
+ let pp:: breaks [ ] boxes = ~ [ ] ;
79
79
auto r = lexer:: gather_comments_and_literals ( cm , filename ) ;
80
80
auto s =
81
81
@rec ( s=pp:: mk_printer ( out, default_columns) ,
@@ -134,12 +134,12 @@ fn attribute_to_str(&ast::attribute attr) -> str {
134
134
}
135
135
136
136
fn cbox ( & ps s, uint u) {
137
- vec :: push ( s. boxes , pp:: consistent) ;
137
+ s. boxes += ~ [ pp:: consistent] ;
138
138
pp:: cbox ( s. s , u) ;
139
139
}
140
140
141
141
fn box ( & ps s, uint u, pp:: breaks b) {
142
- vec :: push ( s. boxes , b ) ;
142
+ s. boxes += ~ [ b ] ;
143
143
pp:: box ( s. s , u, b) ;
144
144
}
145
145
@@ -197,17 +197,7 @@ fn synth_comment(&ps s, str text) {
197
197
word ( s. s , "*/" ) ;
198
198
}
199
199
200
- fn commasep[ IN ] ( & ps s, breaks b, vec[ IN ] elts, fn ( & ps, & IN ) op) {
201
- box ( s, 0 u, b) ;
202
- auto first = true ;
203
- for ( IN elt in elts) {
204
- if ( first) { first = false ; } else { word_space ( s, "," ) ; }
205
- op ( s, elt) ;
206
- }
207
- end ( s) ;
208
- }
209
-
210
- fn commasep_ivec[ IN ] ( & ps s, breaks b, & IN [ ] elts, fn ( & ps, & IN ) op) {
200
+ fn commasep[ IN ] ( & ps s, breaks b, & IN [ ] elts, fn ( & ps, & IN ) op) {
211
201
box ( s, 0 u, b) ;
212
202
auto first = true ;
213
203
for ( IN elt in elts) {
@@ -218,29 +208,9 @@ fn commasep_ivec[IN](&ps s, breaks b, &IN[] elts, fn(&ps, &IN) op) {
218
208
}
219
209
220
210
221
- fn commasep_cmnt[ IN ] ( & ps s, breaks b, vec [ IN ] elts, fn ( & ps, & IN ) op,
211
+ fn commasep_cmnt[ IN ] ( & ps s, breaks b, & IN [ ] elts, fn ( & ps, & IN ) op,
222
212
fn ( & IN ) -> codemap:: span get_span) {
223
213
box ( s, 0 u, b) ;
224
- auto len = vec:: len[ IN ] ( elts) ;
225
- auto i = 0 u;
226
- for ( IN elt in elts) {
227
- maybe_print_comment ( s, get_span ( elt) . hi ) ;
228
- op ( s, elt) ;
229
- i += 1 u;
230
- if ( i < len) {
231
- word ( s. s , "," ) ;
232
- maybe_print_trailing_comment ( s, get_span ( elt) ,
233
- some ( get_span ( elts. ( i) ) . hi ) ) ;
234
- space_if_not_hardbreak ( s) ;
235
- }
236
- }
237
- end ( s) ;
238
- }
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
214
auto len = ivec:: len[ IN ] ( elts) ;
245
215
auto i = 0 u;
246
216
for ( IN elt in elts) {
@@ -259,7 +229,7 @@ fn commasep_cmnt_ivec[IN](&ps s, breaks b, &IN[] elts, fn(&ps, &IN) op,
259
229
260
230
fn commasep_exprs( & ps s, breaks b, & ( @ast:: expr ) [ ] exprs) {
261
231
fn expr_span ( & @ast:: expr expr) -> codemap:: span { ret expr. span ; }
262
- commasep_cmnt_ivec ( s, b, exprs, print_expr, expr_span) ;
232
+ commasep_cmnt ( s, b, exprs, print_expr, expr_span) ;
263
233
}
264
234
265
235
fn print_mod ( & ps s, ast:: _mod _mod, & ast:: attribute[ ] attrs) {
@@ -321,7 +291,7 @@ fn print_type(&ps s, &ast::ty ty) {
321
291
case ( ast:: ty_tup ( ?elts) ) {
322
292
word ( s. s , "tup" ) ;
323
293
popen ( s) ;
324
- commasep_ivec ( s, inconsistent, elts, print_mt) ;
294
+ commasep ( s, inconsistent, elts, print_mt) ;
325
295
pclose ( s) ;
326
296
}
327
297
case ( ast:: ty_rec ( ?fields) ) {
@@ -335,7 +305,7 @@ fn print_type(&ps s, &ast::ty ty) {
335
305
end ( s) ;
336
306
}
337
307
fn get_span ( & ast:: ty_field f) -> codemap:: span { ret f. span ; }
338
- commasep_cmnt_ivec ( s, consistent, fields, print_field, get_span) ;
308
+ commasep_cmnt ( s, consistent, fields, print_field, get_span) ;
339
309
pclose ( s) ;
340
310
}
341
311
case ( ast:: ty_fn ( ?proto, ?inputs, ?output, ?cf, ?constrs) ) {
@@ -492,7 +462,7 @@ fn print_item(&ps s, &@ast::item item) {
492
462
fn print_variant_arg ( & ps s, & ast:: variant_arg arg) {
493
463
print_type ( s, * arg. ty ) ;
494
464
}
495
- commasep_ivec ( s, consistent, v. node . args ,
465
+ commasep ( s, consistent, v. node . args ,
496
466
print_variant_arg) ;
497
467
pclose ( s) ;
498
468
}
@@ -516,7 +486,7 @@ fn print_item(&ps s, &@ast::item item) {
516
486
end ( s) ;
517
487
}
518
488
fn get_span ( & ast:: obj_field f) -> codemap:: span { ret f. ty . span ; }
519
- commasep_cmnt_ivec ( s, consistent, _obj. fields , print_field,
489
+ commasep_cmnt ( s, consistent, _obj. fields , print_field,
520
490
get_span) ;
521
491
pclose ( s) ;
522
492
space ( s. s ) ;
@@ -724,7 +694,7 @@ fn print_expr(&ps s, &@ast::expr expr) {
724
694
fn get_span ( & ast:: elt elt) -> codemap:: span { ret elt. expr . span ; }
725
695
word ( s. s , "tup" ) ;
726
696
popen ( s) ;
727
- commasep_cmnt_ivec ( s, inconsistent, exprs, printElt, get_span) ;
697
+ commasep_cmnt ( s, inconsistent, exprs, printElt, get_span) ;
728
698
pclose ( s) ;
729
699
}
730
700
case ( ast:: expr_rec ( ?fields, ?wth) ) {
@@ -741,7 +711,7 @@ fn print_expr(&ps s, &@ast::expr expr) {
741
711
}
742
712
word ( s. s , "rec" ) ;
743
713
popen ( s) ;
744
- commasep_cmnt_ivec ( s, consistent, fields, print_field, get_span) ;
714
+ commasep_cmnt ( s, consistent, fields, print_field, get_span) ;
745
715
alt ( wth) {
746
716
case ( some ( ?expr) ) {
747
717
if ( ivec:: len ( fields) > 0 u) { space ( s. s ) ; }
@@ -774,7 +744,7 @@ fn print_expr(&ps s, &@ast::expr expr) {
774
744
word_nbsp ( s, "bind" ) ;
775
745
print_expr ( s, func) ;
776
746
popen ( s) ;
777
- commasep_ivec ( s, inconsistent, args, print_opt) ;
747
+ commasep ( s, inconsistent, args, print_opt) ;
778
748
pclose ( s) ;
779
749
}
780
750
case ( ast:: expr_spawn ( _, _, ?e, ?es) ) {
@@ -1039,7 +1009,7 @@ fn print_expr(&ps s, &@ast::expr expr) {
1039
1009
alt ( anon_obj. fields ) {
1040
1010
case ( none) { }
1041
1011
case ( some ( ?fields) ) {
1042
- commasep_cmnt_ivec ( s, consistent, fields, print_field,
1012
+ commasep_cmnt ( s, consistent, fields, print_field,
1043
1013
get_span) ;
1044
1014
}
1045
1015
}
@@ -1126,7 +1096,7 @@ fn print_path(&ps s, &ast::path path) {
1126
1096
}
1127
1097
if ( ivec:: len ( path. node . types ) > 0 u) {
1128
1098
word ( s. s , "[" ) ;
1129
- commasep_ivec ( s, inconsistent, path. node . types , print_boxed_type) ;
1099
+ commasep ( s, inconsistent, path. node . types , print_boxed_type) ;
1130
1100
word ( s. s , "]" ) ;
1131
1101
}
1132
1102
}
@@ -1143,7 +1113,7 @@ fn print_pat(&ps s, &@ast::pat pat) {
1143
1113
print_path ( s, path) ;
1144
1114
if ( ivec:: len ( args) > 0 u) {
1145
1115
popen ( s) ;
1146
- commasep_ivec ( s, inconsistent, args, print_pat) ;
1116
+ commasep ( s, inconsistent, args, print_pat) ;
1147
1117
pclose ( s) ;
1148
1118
}
1149
1119
}
@@ -1159,7 +1129,7 @@ fn print_pat(&ps s, &@ast::pat pat) {
1159
1129
fn get_span ( & ast:: field_pat f) -> codemap:: span {
1160
1130
ret f. pat . span ;
1161
1131
}
1162
- commasep_cmnt_ivec ( s, consistent, fields, print_field, get_span) ;
1132
+ commasep_cmnt ( s, consistent, fields, print_field, get_span) ;
1163
1133
if ( etc) {
1164
1134
if ( ivec:: len ( fields) != 0 u) { word_space ( s, "," ) ; }
1165
1135
word ( s. s , "_" ) ;
@@ -1195,7 +1165,7 @@ fn print_fn_args_and_ret(&ps s, &ast::fn_decl decl) {
1195
1165
word ( s. s , x. ident ) ;
1196
1166
end ( s) ;
1197
1167
}
1198
- commasep_ivec ( s, inconsistent, decl. inputs , print_arg) ;
1168
+ commasep ( s, inconsistent, decl. inputs , print_arg) ;
1199
1169
pclose ( s) ;
1200
1170
maybe_print_comment ( s, decl. output . span . lo ) ;
1201
1171
if ( decl. output . node != ast:: ty_nil) {
@@ -1217,7 +1187,7 @@ fn print_type_params(&ps s, &ast::ty_param[] params) {
1217
1187
if ( ivec:: len ( params ) > 0 u) {
1218
1188
word( s. s, "[" ) ;
1219
1189
fn printParam( & ps s, & ast:: ty_param param) { word ( s . s, param ) ; }
1220
- commasep_ivec ( s, inconsistent, params, printParam) ;
1190
+ commasep ( s, inconsistent, params, printParam) ;
1221
1191
word ( s. s , "]" ) ;
1222
1192
}
1223
1193
}
@@ -1236,7 +1206,7 @@ fn print_meta_item(&ps s, &@ast::meta_item item) {
1236
1206
case ( ast:: meta_list ( ?name, ?items) ) {
1237
1207
word ( s. s , name) ;
1238
1208
popen ( s) ;
1239
- commasep_ivec ( s, consistent, items, print_meta_item) ;
1209
+ commasep ( s, consistent, items, print_meta_item) ;
1240
1210
pclose ( s) ;
1241
1211
}
1242
1212
}
@@ -1252,7 +1222,7 @@ fn print_view_item(&ps s, &@ast::view_item item) {
1252
1222
word ( s. s , id) ;
1253
1223
if ( ivec:: len ( mta) > 0 u) {
1254
1224
popen ( s) ;
1255
- commasep_ivec ( s, consistent, mta, print_meta_item) ;
1225
+ commasep ( s, consistent, mta, print_meta_item) ;
1256
1226
pclose ( s) ;
1257
1227
}
1258
1228
}
@@ -1348,7 +1318,7 @@ fn print_ty_fn(&ps s, &ast::proto proto, &option::t[str] id,
1348
1318
print_alias ( s, input. node . mode ) ;
1349
1319
print_type ( s, * input. node . ty ) ;
1350
1320
}
1351
- commasep_ivec ( s, inconsistent, inputs, print_arg) ;
1321
+ commasep ( s, inconsistent, inputs, print_arg) ;
1352
1322
pclose ( s) ;
1353
1323
maybe_print_comment ( s, output. span . lo ) ;
1354
1324
if ( output. node != ast:: ty_nil) {
@@ -1396,7 +1366,7 @@ fn print_remaining_comments(&ps s) {
1396
1366
}
1397
1367
1398
1368
fn in_cbox ( & ps s) -> bool {
1399
- auto len = vec :: len ( s. boxes ) ;
1369
+ auto len = ivec :: len ( s. boxes ) ;
1400
1370
if ( len == 0 u) { ret false ; }
1401
1371
ret s. boxes . ( len - 1 u) == pp:: consistent;
1402
1372
}
@@ -1446,7 +1416,7 @@ fn lit_to_str(&@ast::lit l) -> str { be to_str(l, print_literal); }
1446
1416
fn next_lit ( & ps s) -> option:: t [ lexer:: lit ] {
1447
1417
alt ( s. literals ) {
1448
1418
case ( some ( ?lits) ) {
1449
- if ( s. cur_lit < vec :: len ( lits) ) {
1419
+ if ( s. cur_lit < ivec :: len ( lits) ) {
1450
1420
ret some ( lits. ( s. cur_lit ) ) ;
1451
1421
} else { ret none[ lexer:: lit] ; }
1452
1422
}
@@ -1541,7 +1511,7 @@ fn to_str[T](&T t, fn(&ps, &T) f) -> str {
1541
1511
fn next_comment ( & ps s) -> option:: t [ lexer:: cmnt ] {
1542
1512
alt ( s. comments ) {
1543
1513
case ( some ( ?cmnts) ) {
1544
- if ( s. cur_cmnt < vec :: len ( cmnts) ) {
1514
+ if ( s. cur_cmnt < ivec :: len ( cmnts) ) {
1545
1515
ret some ( cmnts. ( s. cur_cmnt ) ) ;
1546
1516
} else { ret none[ lexer:: cmnt] ; }
1547
1517
}
@@ -1579,12 +1549,11 @@ fn uint_to_str(&uint i) -> str { ret uint::str(i); }
1579
1549
1580
1550
fn ast_constr_to_str(&@ast::constr c) -> str {
1581
1551
// TODO: Remove this vec->ivec conversion.
1582
- auto cag_ivec = ~[];
1552
+ auto cags = ~[];
1583
1553
for (@ast::constr_arg_general[uint] cag in c.node.args) {
1584
- cag_ivec += ~[cag];
1554
+ cags += ~[cag];
1585
1555
}
1586
- ret ast::path_to_str(c.node.path) +
1587
- constr_args_to_str(uint_to_str, cag_ivec);
1556
+ ret ast::path_to_str(c.node.path) + constr_args_to_str(uint_to_str, cags);
1588
1557
}
1589
1558
1590
1559
fn ast_constrs_str(&(@ast::constr)[] constrs) -> str {
0 commit comments