From 88d54c2b875830bb00170421f3ea7d74eefe3f2b Mon Sep 17 00:00:00 2001 From: Clark Gaebel Date: Tue, 18 Nov 2014 18:09:02 -0800 Subject: [PATCH] code review --- phf/src/map.rs | 8 ++++---- phf/src/ordered_map.rs | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/phf/src/map.rs b/phf/src/map.rs index 11a3ee18..583d71ed 100644 --- a/phf/src/map.rs +++ b/phf/src/map.rs @@ -103,8 +103,8 @@ impl Map { } /// Like `get`, but returns both the key and the value. - pub fn get_kv(&self, key: &T) -> Option<&(K, V)> where T: PhfHash+Equiv { - self.get_entry(key, |k| key.equiv(k)) + pub fn get_kv(&self, key: &T) -> Option<(&K, &V)> where T: PhfHash+Equiv { + self.get_entry(key, |k| key.equiv(k)).map(|e| (&e.0, &e.1)) } /// Like `get`, but can operate on any type that is equivalent to a key. @@ -120,8 +120,8 @@ impl Map { /// Like `get_kv`, but can operate on any type that is equivalent to a /// key. - pub fn get_kv_equiv(&self, key: &T) -> Option<&(K, V)> where T: PhfHash+Equiv { - self.get_entry(key, |k| key.equiv(k)) + pub fn get_kv_equiv(&self, key: &T) -> Option<(&K, &V)> where T: PhfHash+Equiv { + self.get_entry(key, |k| key.equiv(k)).map(|e| (&e.0, &e.1)) } /// Returns an iterator over the key/value pairs in the map. diff --git a/phf/src/ordered_map.rs b/phf/src/ordered_map.rs index 84387043..755d4dfb 100644 --- a/phf/src/ordered_map.rs +++ b/phf/src/ordered_map.rs @@ -116,8 +116,8 @@ impl OrderedMap { } /// Like `get`, but returns both the key and the value. - pub fn get_kv(&self, key: &T) -> Option<&(K, V)> where T: PhfHash+Equiv { - self.get_entry(key, |k| key.equiv(k)).map(|(_, r)| r) + pub fn get_kv(&self, key: &T) -> Option<(&K, &V)> where T: PhfHash+Equiv { + self.get_entry(key, |k| key.equiv(k)).map(|(_, e)| (&e.0, &e.1)) } /// Like `get`, but can operate on any type that is equivalent to a key. @@ -139,8 +139,8 @@ impl OrderedMap { /// Like `get_kv`, but can operate on any type that is equivalent to a /// key. - pub fn get_kv_equiv(&self, key: &T) -> Option<&(K, V)> where T: PhfHash+Equiv { - self.get_entry(key, |k| key.equiv(k)).map(|(_, r)| r) + pub fn get_kv_equiv(&self, key: &T) -> Option<(&K, &V)> where T: PhfHash+Equiv { + self.get_entry(key, |k| key.equiv(k)).map(|(_, e)| (&e.0, &e.1)) } /// Returns an iterator over the key/value pairs in the map.