[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[lmi-commits] [4950] Determine whether a string contains a given charact
From: |
Greg Chicares |
Subject: |
[lmi-commits] [4950] Determine whether a string contains a given character |
Date: |
Fri, 14 May 2010 19:57:01 +0000 |
Revision: 4950
http://svn.sv.gnu.org/viewvc/?view=rev&root=lmi&revision=4950
Author: chicares
Date: 2010-05-14 19:57:00 +0000 (Fri, 14 May 2010)
Log Message:
-----------
Determine whether a string contains a given character
Modified Paths:
--------------
lmi/trunk/contains.hpp
lmi/trunk/contains_test.cpp
Modified: lmi/trunk/contains.hpp
===================================================================
--- lmi/trunk/contains.hpp 2010-05-14 15:54:18 UTC (rev 4949)
+++ lmi/trunk/contains.hpp 2010-05-14 19:57:00 UTC (rev 4950)
@@ -123,6 +123,21 @@
/// Ascertain whether a "container" includes a given element.
///
+/// If T has 'traits_type::char_type', assume it behaves like
std::basic_string.
+///
+/// This overload is for std::basic_string::find(traits_type::char_type).
+
+template<typename T>
+bool contains
+ (T const& t
+ ,typename T::traits_type::char_type element
+ )
+{
+ return T::npos != t.find(element);
+}
+
+/// Ascertain whether a "container" includes a given element.
+///
/// If T has 'key_type', assume it behaves like an associative container.
template<typename T>
@@ -149,6 +164,11 @@
return std::string::npos != t.find(element);
}
+bool contains(std::string const& t, char element)
+{
+ return std::string::npos != t.find(element);
+}
+
// Associative containers.
template<typename K, typename T>
Modified: lmi/trunk/contains_test.cpp
===================================================================
--- lmi/trunk/contains_test.cpp 2010-05-14 15:54:18 UTC (rev 4949)
+++ lmi/trunk/contains_test.cpp 2010-05-14 19:57:00 UTC (rev 4950)
@@ -79,6 +79,8 @@
BOOST_TEST(!contains(w, x));
BOOST_TEST( contains(w, "eta"));
BOOST_TEST(!contains(w, "zeta"));
+ BOOST_TEST( contains(w, 'e'));
+ BOOST_TEST(!contains(w, 'q'));
// Associative containers.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [lmi-commits] [4950] Determine whether a string contains a given character,
Greg Chicares <=