diff --git a/alib2measure/src/measurements/MeasurementTypes.hpp b/alib2measure/src/measurements/MeasurementTypes.hpp index 2587077fdca2f55f915c2b61ec57de7de4e68e3f..b1338a78247b7cc208b6a3e164bfa06fbd355d53 100644 --- a/alib2measure/src/measurements/MeasurementTypes.hpp +++ b/alib2measure/src/measurements/MeasurementTypes.hpp @@ -46,22 +46,6 @@ std::string to_string ( stealth_string & ); template < typename T > using stealth_vector = std::vector < T, stealth_allocator < T > >; -template < typename T > -std::ostream & operator <<( std::ostream & os, const stealth_vector < T > & vec ) { - os << "["; - - bool first = true; - - for ( const T & elem : vec ) { - if ( !first ) os << ", "; - - first = false; - os << elem; - } - - return os << "]"; -} - template < class Key, class T, class Compare = std::less < Key > > using stealth_map = std::map < Key, T, Compare, stealth_allocator < std::pair < const Key, T > > >; } diff --git a/alib2std/src/extensions/vector.hpp b/alib2std/src/extensions/vector.hpp index 7f6b0d59a9a58a66eebced02552f7eb34e519acd..268dfcbbb100be7e22d0cc5a273b9bcedcdd60a8 100644 --- a/alib2std/src/extensions/vector.hpp +++ b/alib2std/src/extensions/vector.hpp @@ -162,8 +162,8 @@ public: } }; -template< class T > -std::ostream& operator<<(std::ostream& out, const std::vector<T>& vector) { +template< class T , class Allocator > +std::ostream& operator<<(std::ostream& out, const std::vector<T, Allocator>& vector) { out << "["; bool first = true; @@ -192,9 +192,9 @@ std::ostream& operator<<(std::ostream& out, const std::ptr_vector<T>& vector) { return out; } -template<class T> -struct compare<vector<T>> { - int operator()(const vector<T>& first, const vector<T>& second) const { +template<class T, class Allocator> +struct compare<vector<T, Allocator>> { + int operator()(const vector<T, Allocator>& first, const vector<T, Allocator>& second) const { if(first.size() < second.size()) return -1; if(first.size() > second.size()) return 1;