From dbeef1d6574a8b4fe033d1188643c4f90a95e043 Mon Sep 17 00:00:00 2001 From: Daniel Micay Date: Wed, 23 Jan 2013 12:45:12 -0500 Subject: [PATCH] remove the LinearMap get_copy method This isn't simpler (or faster) than just doing the copy in the caller, and it doesn't work for types that can be cloned but not copied. --- src/libcore/hashmap.rs | 26 +++++++++----------------- 1 file changed, 9 insertions(+), 17 deletions(-) diff --git a/src/libcore/hashmap.rs b/src/libcore/hashmap.rs index b8e859d7eb0..c84dea02010 100644 --- a/src/libcore/hashmap.rs +++ b/src/libcore/hashmap.rs @@ -413,14 +413,6 @@ pub mod linear { } } } - - pure fn get_copy(&const self, k: &K) -> V { - let value = self.find_copy(k); - if value.is_none() { - fail fmt!("No entry found for key: %?", k); - } - option::unwrap(move value) - } } impl LinearMap: Eq { @@ -503,17 +495,17 @@ pub mod test { let mut m = ~LinearMap(); assert m.insert(1, 2); assert m.insert(2, 4); - assert m.get_copy(&1) == 2; - assert m.get_copy(&2) == 4; + assert *m.get(&1) == 2; + assert *m.get(&2) == 4; } #[test] pub fn overwrite() { let mut m = ~LinearMap(); assert m.insert(1, 2); - assert m.get_copy(&1) == 2; + assert *m.get(&1) == 2; assert !m.insert(1, 3); - assert m.get_copy(&1) == 3; + assert *m.get(&1) == 3; } #[test] @@ -522,9 +514,9 @@ pub mod test { assert m.insert(1, 2); assert m.insert(5, 3); assert m.insert(9, 4); - assert m.get_copy(&9) == 4; - assert m.get_copy(&5) == 3; - assert m.get_copy(&1) == 2; + assert *m.get(&9) == 4; + assert *m.get(&5) == 3; + assert *m.get(&1) == 2; } #[test] @@ -534,8 +526,8 @@ pub mod test { assert m.insert(5, 3); assert m.insert(9, 4); assert m.remove(&1); - assert m.get_copy(&9) == 4; - assert m.get_copy(&5) == 3; + assert *m.get(&9) == 4; + assert *m.get(&5) == 3; } #[test]