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());
103 sort(buffer.begin(), buffer.end(),
make_comparator(&__A__::get, JComparison::gt()));
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) {
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) {
Utility class to parse command line options.
int main(int argc, char *argv[])
JComparator< JResult_t T::*, JComparison::lt > make_comparator(JResult_t T::*member)
Helper method to create comparator between values of data member.
std::vector< JHitW0 > buffer_type
hits
#define ASSERT(A,...)
Assert macro.
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
do set_variable OUTPUT_DIRECTORY $WORKDIR T
General purpose messaging.
Utility class to parse command line options.
void copy(const Head &from, JHead &to)
Copy header from from to to.