Skip to content

Commit 479ce4d

Browse files
committed
rustc: Move crate directives over to interior vectors
1 parent 0226f56 commit 479ce4d

File tree

4 files changed

+12
-13
lines changed

4 files changed

+12
-13
lines changed

src/comp/syntax/ast.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -85,15 +85,15 @@ type crate_cfg = vec[@meta_item];
8585

8686
type crate = spanned[crate_];
8787

88-
type crate_ = rec(vec[@crate_directive] directives,
88+
type crate_ = rec((@crate_directive)[] directives,
8989
_mod module,
9090
attribute[] attrs,
9191
crate_cfg config);
9292

9393
tag crate_directive_ {
9494
cdir_src_mod(ident, option::t[filename], attribute[]);
9595
cdir_dir_mod(ident, option::t[filename],
96-
vec[@crate_directive], attribute[]);
96+
(@crate_directive)[], attribute[]);
9797
cdir_view_item(@view_item);
9898
cdir_syntax(path);
9999
cdir_auth(path, _auth);

src/comp/syntax/fold.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,7 @@ fn noop_fold_crate(&crate_ c, ast_fold fld) -> crate_ {
132132
auto fold_meta_item = bind fold_meta_item_(_,fld);
133133
auto fold_attribute = bind fold_attribute_(_,fold_meta_item);
134134

135-
ret rec(directives=vec::map(fld.fold_crate_directive, c.directives),
135+
ret rec(directives=ivec::map(fld.fold_crate_directive, c.directives),
136136
module=fld.fold_mod(c.module),
137137
attrs=ivec::map(fold_attribute, c.attrs),
138138
config=vec::map(fold_meta_item, c.config));
@@ -146,7 +146,7 @@ fn noop_fold_crate_directive(&crate_directive_ cd, ast_fold fld)
146146
}
147147
case(cdir_dir_mod(?id,?fname,?cds,?attrs)) {
148148
cdir_dir_mod(fld.fold_ident(id),fname,
149-
map(fld.fold_crate_directive, cds), attrs)
149+
ivec::map(fld.fold_crate_directive, cds), attrs)
150150
}
151151
case(cdir_view_item(?vi)) {
152152
cdir_view_item(fld.fold_view_item(vi))

src/comp/syntax/parse/eval.rs

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,17 +24,16 @@ type ctx =
2424
mutable uint chpos,
2525
ast::crate_cfg cfg);
2626

27-
fn eval_crate_directives(ctx cx, vec[@ast::crate_directive] cdirs,
27+
fn eval_crate_directives(ctx cx, &(@ast::crate_directive)[] cdirs,
2828
str prefix, &mutable vec[@ast::view_item] view_items,
2929
&mutable vec[@ast::item] items) {
3030
for (@ast::crate_directive sub_cdir in cdirs) {
3131
eval_crate_directive(cx, sub_cdir, prefix, view_items, items);
3232
}
3333
}
3434

35-
fn eval_crate_directives_to_mod(ctx cx,
36-
vec[@ast::crate_directive] cdirs, str prefix)
37-
-> ast::_mod {
35+
fn eval_crate_directives_to_mod(ctx cx, &(@ast::crate_directive)[] cdirs,
36+
str prefix) -> ast::_mod {
3837
let vec[@ast::view_item] view_items = [];
3938
let vec[@ast::item] items = [];
4039
eval_crate_directives(cx, cdirs, prefix, view_items, items);

src/comp/syntax/parse/parser.rs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2337,7 +2337,7 @@ fn parse_crate_from_source_file(&str input, &ast::crate_cfg cfg,
23372337
auto first_item_outer_attrs = crate_attrs._1;
23382338
auto m = parse_mod_items(p, token::EOF,
23392339
first_item_outer_attrs);
2340-
ret @spanned(lo, p.get_lo_pos(), rec(directives=[],
2340+
ret @spanned(lo, p.get_lo_pos(), rec(directives=~[],
23412341
module=m,
23422342
attrs=crate_attrs._0,
23432343
config=p.get_cfg()));
@@ -2419,8 +2419,8 @@ fn parse_crate_directive(&parser p, &ast::attribute[] first_outer_attr)
24192419
}
24202420

24212421
fn parse_crate_directives(&parser p, token::token term,
2422-
&ast::attribute[] first_outer_attr) ->
2423-
vec[@ast::crate_directive] {
2422+
&ast::attribute[] first_outer_attr)
2423+
-> (@ast::crate_directive)[] {
24242424

24252425
// This is pretty ugly. If we have an outer attribute then we can't accept
24262426
// seeing the terminator next, so if we do see it then fail the same way
@@ -2429,10 +2429,10 @@ fn parse_crate_directives(&parser p, token::token term,
24292429
expect_word(p, "mod");
24302430
}
24312431

2432-
let vec[@ast::crate_directive] cdirs = [];
2432+
let (@ast::crate_directive)[] cdirs = ~[];
24332433
while (p.peek() != term) {
24342434
auto cdir = @parse_crate_directive(p, first_outer_attr);
2435-
vec::push(cdirs, cdir);
2435+
cdirs += ~[cdir];
24362436
}
24372437
ret cdirs;
24382438
}

0 commit comments

Comments
 (0)