Skip to content

Commit ac58250

Browse files
committed
Ported trans/base.rs from oldvisit to <V:Visitor> trait API.
1 parent 3ac6334 commit ac58250

File tree

1 file changed

+12
-7
lines changed

1 file changed

+12
-7
lines changed

src/librustc/middle/trans/base.rs

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ use syntax::codemap::span;
8585
use syntax::parse::token;
8686
use syntax::parse::token::{special_idents};
8787
use syntax::print::pprust::stmt_to_str;
88-
use syntax::oldvisit;
88+
use syntax::visit;
8989
use syntax::{ast, ast_util, codemap, ast_map};
9090
use syntax::abi::{X86, X86_64, Arm, Mips};
9191

@@ -2638,13 +2638,18 @@ pub fn trans_constant(ccx: &mut CrateContext, it: @ast::item) {
26382638
}
26392639
}
26402640

2641+
struct TransConstantsVisitor { ccx: @mut CrateContext }
2642+
2643+
impl visit::Visitor<()> for TransConstantsVisitor {
2644+
fn visit_item(&mut self, i:@ast::item, _:()) {
2645+
trans_constant(self.ccx, i);
2646+
visit::walk_item(self, i, ());
2647+
}
2648+
}
2649+
26412650
pub fn trans_constants(ccx: @mut CrateContext, crate: &ast::Crate) {
2642-
oldvisit::visit_crate(
2643-
crate, ((),
2644-
oldvisit::mk_simple_visitor(@oldvisit::SimpleVisitor {
2645-
visit_item: |a| trans_constant(ccx, a),
2646-
..*oldvisit::default_simple_visitor()
2647-
})));
2651+
let mut v = TransConstantsVisitor { ccx: ccx };
2652+
visit::walk_crate(&mut v, crate, ());
26482653
}
26492654

26502655
pub fn vp2i(cx: @mut Block, v: ValueRef) -> ValueRef {

0 commit comments

Comments
 (0)