diff options
| author | Remko Tronçon <git@el-tramo.be> | 2011-07-17 17:02:09 (GMT) | 
|---|---|---|
| committer | Remko Tronçon <git@el-tramo.be> | 2011-07-17 17:02:28 (GMT) | 
| commit | 1793fa416371365f7435f1946cc556cc14613821 (patch) | |
| tree | 7b9283b62a318f926238c5075dcdc953cbc9be90 | |
| parent | 5adcba3ba42a0f7cfde8dfdf6aa6f322077c3744 (diff) | |
| download | swift-1793fa416371365f7435f1946cc556cc14613821.zip swift-1793fa416371365f7435f1946cc556cc14613821.tar.bz2 | |
Added PairFirstEquals.
| -rw-r--r-- | Swiften/Base/Algorithm.h | 19 | 
1 files changed, 19 insertions, 0 deletions
| diff --git a/Swiften/Base/Algorithm.h b/Swiften/Base/Algorithm.h index b7459ed..4e68e70 100644 --- a/Swiften/Base/Algorithm.h +++ b/Swiften/Base/Algorithm.h @@ -77,6 +77,11 @@ namespace Swift {  				}  			}  		} +		 +		template<typename C, typename P> +		void eraseIfImpl(C& c, const P& p, VectorCategory) { +			c.erase(std::remove_if(c.begin(), c.end(), p), c.end()); +		}  	}  	template<typename C, typename V> @@ -115,6 +120,20 @@ namespace Swift {  	 * Functors  	 */  	template<typename K, typename V> +	class PairFirstEquals { +		public: +			PairFirstEquals(const K& value) : value(value) { +			} + +			bool operator()(const std::pair<K,V>& pair) const { +				return pair.first == value; +			} + +		private: +			K value; +	}; + +	template<typename K, typename V>  	class PairSecondEquals {  		public:  			PairSecondEquals(const V& value) : value(value) { | 
 Swift
 Swift