38 namespace Gecode {
namespace Set {
41 template<
class Char,
class Traits,
class I>
46 if (
r.min() ==
r.max()) {
48 }
else if (
r.min()+1 ==
r.max()) {
49 s <<
r.min() <<
"," <<
r.max();
51 s <<
r.min() <<
".." <<
r.max();
61 template<
class Char,
class Traits,
class IL,
class IU>
63 print(std::basic_ostream<Char,Traits>& s,
bool assigned, IL& lb, IU& ub,
64 unsigned int cardMin,
unsigned int cardMax) {
71 if (cardMin==cardMax) {
72 s <<
"#(" << cardMin <<
")";
74 s <<
"#(" << cardMin <<
"," << cardMax <<
")";
79 template<
class Char,
class Traits>
80 std::basic_ostream<Char,Traits>&
82 std::basic_ostringstream<Char,Traits> s;
83 s.copyfmt(os); s.width(0);
90 template<
class Char,
class Traits>
91 inline std::basic_ostream<Char,Traits>&
96 template<
class Char,
class Traits>
97 std::basic_ostream<Char,Traits>&
99 std::basic_ostringstream<Char,Traits> s;
100 s.copyfmt(os); s.width(0);
104 return os << s.str();
107 template<
class Char,
class Traits>
108 std::basic_ostream<Char,Traits>&
110 std::basic_ostringstream<Char,Traits> s;
111 s.copyfmt(os); s.width(0);
115 return os << s.str();
118 template<
class Char,
class Traits>
119 std::basic_ostream<Char,Traits>&
121 std::basic_ostringstream<Char,Traits> s;
122 s.copyfmt(os); s.width(0);
124 s <<
"{" <<
x.
glbMin() <<
"}#(1)";
131 return os << s.str();