+////////////////////////////////////////////////////////////////////////////////\r
+\r
+// Author: Andy Rushton\r
+// Copyright: (c) Southampton University 1999-2004\r
+// (c) Andy Rushton 2004-2009\r
+// License: BSD License, see ../docs/license.html\r
+\r
+// template implementations\r
+\r
+////////////////////////////////////////////////////////////////////////////////\r
+#include "print_sequence.hpp"\r
+\r
+namespace stlplus\r
+{\r
+\r
+ ////////////////////////////////////////////////////////////////////////////////\r
+ // set\r
+\r
+ template<typename K, typename C, typename S>\r
+ void print_set(std::ostream& device,\r
+ const std::set<K,C>& values,\r
+ S print_fn,\r
+ const std::string& separator)\r
+ {\r
+ print_sequence(device, values.begin(), values.end(), print_fn, separator);\r
+ }\r
+\r
+ ////////////////////////////////////////////////////////////////////////////////\r
+ // multiset\r
+\r
+ template<typename K, typename C, typename S>\r
+ void print_multiset(std::ostream& device,\r
+ const std::multiset<K,C>& values,\r
+ S print_fn,\r
+ const std::string& separator)\r
+ {\r
+ print_sequence(device, values.begin(), values.end(), print_fn, separator);\r
+ }\r
+\r
+ ////////////////////////////////////////////////////////////////////////////////\r
+} // end namespace stlplus\r