From 3528f74335be6f28671277936d643efb16cbc6c7 Mon Sep 17 00:00:00 2001 From: Patrick Walton Date: Fri, 20 Dec 2013 19:50:13 -0800 Subject: [PATCH] librustc: De-`@mut` `CStore::used_crate_sources` --- src/librustc/metadata/cstore.rs | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/src/librustc/metadata/cstore.rs b/src/librustc/metadata/cstore.rs index b0d04165d8a3..adf25219acaf 100644 --- a/src/librustc/metadata/cstore.rs +++ b/src/librustc/metadata/cstore.rs @@ -63,7 +63,7 @@ pub struct CrateSource { pub struct CStore { priv metas: RefCell>, priv extern_mod_crate_map: RefCell, - priv used_crate_sources: ~[CrateSource], + priv used_crate_sources: RefCell<~[CrateSource]>, priv used_libraries: ~[(~str, NativeLibaryKind)], priv used_link_args: ~[~str], intr: @ident_interner @@ -77,7 +77,7 @@ impl CStore { CStore { metas: RefCell::new(HashMap::new()), extern_mod_crate_map: RefCell::new(HashMap::new()), - used_crate_sources: ~[], + used_crate_sources: RefCell::new(~[]), used_libraries: ~[], used_link_args: ~[], intr: intr @@ -117,18 +117,17 @@ impl CStore { } pub fn add_used_crate_source(&mut self, src: CrateSource) { - if !self.used_crate_sources.contains(&src) { - self.used_crate_sources.push(src); + let mut used_crate_sources = self.used_crate_sources.borrow_mut(); + if !used_crate_sources.get().contains(&src) { + used_crate_sources.get().push(src); } } - pub fn get_used_crate_sources<'a>(&'a self) -> &'a [CrateSource] { - self.used_crate_sources.as_slice() - } - pub fn get_used_crates(&self, prefer: LinkagePreference) -> ~[(ast::CrateNum, Option)] { - self.used_crate_sources.iter() + let used_crate_sources = self.used_crate_sources.borrow(); + used_crate_sources.get() + .iter() .map(|src| (src.cnum, match prefer { RequireDynamic => src.dylib.clone(), RequireStatic => src.rlib.clone(),