namespace std {
// Sticking this in std:: makes it possible for ostream_iterator to use it.
template <class A, class B>
- ostream & operator<<(ostream &o, const pair<A,B> &d) {
+ ostream & operator<<(ostream & o, const pair<A,B> & d) {
return o << "<" << d.first << "," << d.second << ">";
}
}
template <class A>
typename enable_if<is_const_iterable<A>::value && !is_same<A,string>::value, ostream>::type &
-operator<<(ostream &o, const A &a) {
+operator<<(ostream & o, const A & a) {
return o << "[" << implode(a, ", ") << "]";
}