diff options
Diffstat (limited to 'raul/TableImpl.hpp')
-rw-r--r-- | raul/TableImpl.hpp | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/raul/TableImpl.hpp b/raul/TableImpl.hpp index d01c0ca..4ccf7f3 100644 --- a/raul/TableImpl.hpp +++ b/raul/TableImpl.hpp @@ -66,14 +66,23 @@ template <typename K, typename T> typename Table<K,T>::iterator Table<K,T>::find(const K& key) { - return find(begin(), end(), key); + return find(begin(), end(), key); +} + + +/** Binary search (O(log(end - start))) */ +template <typename K, typename T> +typename Table<K,T>::const_iterator +Table<K,T>::find(const_iterator start, const_iterator finish, const K& key) const +{ + return ((Table<K,T>*)this)->find(start, finish, key); } /** Binary search (O(log(end - start))) */ template <typename K, typename T> typename Table<K,T>::iterator -Table<K,T>::find(iterator start, iterator finish, const K& key) +Table<K,T>::find(const_iterator start, const_iterator finish, const K& key) { if (size() == 0) return end(); |