diff options
| author | Felix S. Klock II <pnkfelix@pnkfx.org> | 2013-08-14 10:59:41 +0200 |
|---|---|---|
| committer | Felix S. Klock II <pnkfelix@pnkfx.org> | 2013-08-15 04:09:19 +0200 |
| commit | ac5825057fed5aafe69d2eaed62d044e2faf6287 (patch) | |
| tree | 96e53be99798c4dba85935d25b5393bb2dac29e8 /src | |
| parent | 3ac6334f32f4b00ab0ada5869c9bccad94778366 (diff) | |
| download | rust-ac5825057fed5aafe69d2eaed62d044e2faf6287.tar.gz rust-ac5825057fed5aafe69d2eaed62d044e2faf6287.zip | |
Ported trans/base.rs from oldvisit to <V:Visitor> trait API.
Diffstat (limited to 'src')
| -rw-r--r-- | src/librustc/middle/trans/base.rs | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/src/librustc/middle/trans/base.rs b/src/librustc/middle/trans/base.rs index ec6bb0c998e..18634b1242a 100644 --- a/src/librustc/middle/trans/base.rs +++ b/src/librustc/middle/trans/base.rs @@ -85,7 +85,7 @@ use syntax::codemap::span; use syntax::parse::token; use syntax::parse::token::{special_idents}; use syntax::print::pprust::stmt_to_str; -use syntax::oldvisit; +use syntax::visit; use syntax::{ast, ast_util, codemap, ast_map}; use syntax::abi::{X86, X86_64, Arm, Mips}; @@ -2638,13 +2638,18 @@ pub fn trans_constant(ccx: &mut CrateContext, it: @ast::item) { } } +struct TransConstantsVisitor { ccx: @mut CrateContext } + +impl visit::Visitor<()> for TransConstantsVisitor { + fn visit_item(&mut self, i:@ast::item, _:()) { + trans_constant(self.ccx, i); + visit::walk_item(self, i, ()); + } +} + pub fn trans_constants(ccx: @mut CrateContext, crate: &ast::Crate) { - oldvisit::visit_crate( - crate, ((), - oldvisit::mk_simple_visitor(@oldvisit::SimpleVisitor { - visit_item: |a| trans_constant(ccx, a), - ..*oldvisit::default_simple_visitor() - }))); + let mut v = TransConstantsVisitor { ccx: ccx }; + visit::walk_crate(&mut v, crate, ()); } pub fn vp2i(cx: @mut Block, v: ValueRef) -> ValueRef { |
