diff options
| author | Luqman Aden <laden@csclub.uwaterloo.ca> | 2013-02-17 21:45:00 -0500 |
|---|---|---|
| committer | Luqman Aden <laden@csclub.uwaterloo.ca> | 2013-02-17 21:45:00 -0500 |
| commit | 0f09c106f00d774a6e59b1245edcc536cc2bf459 (patch) | |
| tree | ca2ef1c6451bbad24cb29f87a759e4e45c93783a /src/librustc/metadata | |
| parent | a6945f2a45d56ef692cd8f2955dcef4e4c10d50a (diff) | |
| download | rust-0f09c106f00d774a6e59b1245edcc536cc2bf459.tar.gz rust-0f09c106f00d774a6e59b1245edcc536cc2bf459.zip | |
libsyntax: Update view_item_use/import to reflect actual usage
Diffstat (limited to 'src/librustc/metadata')
| -rw-r--r-- | src/librustc/metadata/creader.rs | 7 | ||||
| -rw-r--r-- | src/librustc/metadata/cstore.rs | 30 |
2 files changed, 19 insertions, 18 deletions
diff --git a/src/librustc/metadata/creader.rs b/src/librustc/metadata/creader.rs index a2203f0a399..51c34a86921 100644 --- a/src/librustc/metadata/creader.rs +++ b/src/librustc/metadata/creader.rs @@ -127,10 +127,11 @@ struct Env { fn visit_view_item(e: @mut Env, i: @ast::view_item) { match /*bad*/copy i.node { - ast::view_item_use(ident, meta_items, id) => { - debug!("resolving use stmt. ident: %?, meta: %?", ident, meta_items); + ast::view_item_extern_mod(ident, meta_items, id) => { + debug!("resolving extern mod stmt. ident: %?, meta: %?", + ident, meta_items); let cnum = resolve_crate(e, ident, meta_items, ~"", i.span); - cstore::add_use_stmt_cnum(e.cstore, id, cnum); + cstore::add_extern_mod_stmt_cnum(e.cstore, id, cnum); } _ => () } diff --git a/src/librustc/metadata/cstore.rs b/src/librustc/metadata/cstore.rs index 73ec872b6a6..5b5f9bf0818 100644 --- a/src/librustc/metadata/cstore.rs +++ b/src/librustc/metadata/cstore.rs @@ -40,22 +40,22 @@ pub type crate_metadata = @{name: ~str, pub struct CStore { priv metas: oldmap::HashMap<ast::crate_num, crate_metadata>, - priv use_crate_map: use_crate_map, + priv extern_mod_crate_map: extern_mod_crate_map, priv used_crate_files: ~[Path], priv used_libraries: ~[~str], priv used_link_args: ~[~str], intr: @ident_interner } -// Map from node_id's of local use statements to crate numbers -type use_crate_map = oldmap::HashMap<ast::node_id, ast::crate_num>; +// Map from node_id's of local extern mod statements to crate numbers +type extern_mod_crate_map = oldmap::HashMap<ast::node_id, ast::crate_num>; pub fn mk_cstore(intr: @ident_interner) -> CStore { let meta_cache = oldmap::HashMap(); let crate_map = oldmap::HashMap(); return CStore { metas: meta_cache, - use_crate_map: crate_map, + extern_mod_crate_map: crate_map, used_crate_files: ~[], used_libraries: ~[], used_link_args: ~[], @@ -127,18 +127,18 @@ pub fn get_used_link_args(cstore: @mut CStore) -> ~[~str] { return /*bad*/copy cstore.used_link_args; } -pub fn add_use_stmt_cnum(cstore: @mut CStore, - use_id: ast::node_id, - cnum: ast::crate_num) { - let use_crate_map = cstore.use_crate_map; - use_crate_map.insert(use_id, cnum); +pub fn add_extern_mod_stmt_cnum(cstore: @mut CStore, + emod_id: ast::node_id, + cnum: ast::crate_num) { + let extern_mod_crate_map = cstore.extern_mod_crate_map; + extern_mod_crate_map.insert(emod_id, cnum); } -pub fn find_use_stmt_cnum(cstore: @mut CStore, - use_id: ast::node_id) +pub fn find_extern_mod_stmt_cnum(cstore: @mut CStore, + emod_id: ast::node_id) -> Option<ast::crate_num> { - let use_crate_map = cstore.use_crate_map; - use_crate_map.find(&use_id) + let extern_mod_crate_map = cstore.extern_mod_crate_map; + extern_mod_crate_map.find(&emod_id) } // returns hashes of crates directly used by this crate. Hashes are @@ -147,8 +147,8 @@ pub fn get_dep_hashes(cstore: @mut CStore) -> ~[~str] { type crate_hash = {name: ~str, hash: ~str}; let mut result = ~[]; - let use_crate_map = cstore.use_crate_map; - for use_crate_map.each_value |&cnum| { + let extern_mod_crate_map = cstore.extern_mod_crate_map; + for extern_mod_crate_map.each_value |&cnum| { let cdata = cstore::get_crate_data(cstore, cnum); let hash = decoder::get_crate_hash(cdata.data); debug!("Add hash[%s]: %s", cdata.name, hash); |
