29 friend inline std::ostream&
operator<<(std::ostream& out,
const __A__&
object) {
return out <<
object.a; }
36 void print(std::ostream& out,
int debug,
const char* title, T __begin, T __end)
43 copy(__begin, __end, ostream_iterator<typename T::value_type>(out,
" "));
56 int main(
int argc,
char **argv)
65 JParser<> zap(
"Auxiliary program to test object comparison methods.");
71 catch(
const exception &error) {
72 FATAL(error.what() << endl);
79 buffer.push_back(__A__(3.0));
80 buffer.push_back(__A__(4.0));
81 buffer.push_back(__A__(2.0));
82 buffer.push_back(__A__(1.0));
83 buffer.push_back(__A__(5.0));
85 ASSERT(buffer.size() >= 2);
89 buffer.begin(), buffer.end());
95 "sort(.., make_comparator(&__A__::get))",
96 buffer.begin(), buffer.end());
98 for (buffer_type::const_iterator q = buffer.begin(), p = q++; q != buffer.end(); ++p, ++q) {
99 ASSERT(p->get() < q->get());
106 "sort(.., make_comparator(&__A__::get, JComparison::gt()))",
107 buffer.begin(), buffer.end());
109 for (buffer_type::const_iterator q = buffer.begin(), p = q++; q != buffer.end(); ++p, ++q) {
110 ASSERT(p->get() > q->get());
117 "sort(.., make_comparator(&__A__::a))",
118 buffer.begin(), buffer.end());
120 for (buffer_type::const_iterator q = buffer.begin(), p = q++; q != buffer.end(); ++p, ++q) {
124 sort(buffer.begin(), buffer.end(),
make_comparator(&__A__::a, JComparison::gt()));
127 "sort(.., make_comparator(&__A__::a), JComparison::gt())",
128 buffer.begin(), buffer.end());
130 for (buffer_type::const_iterator q = buffer.begin(), p = q++; q != buffer.end(); ++p, ++q) {