28 bool equals(
const __A__&
object)
const
30 return this->value ==
object.value;
33 friend std::ostream&
operator<<(std::ostream& out,
const __A__&
object)
35 return out <<
object.value;
53 bool equals(
const __B__&
object)
const
55 return this->value ==
object.value;
58 friend std::ostream&
operator<<(std::ostream& out,
const __B__&
object)
60 return out <<
object.value;
78 friend std::ostream&
operator<<(std::ostream& out,
const __C__&
object)
80 return out << static_cast<const __A__&>(object) <<
' '
81 << static_cast<const __B__&>(
object);
89 public JMultiEquals<__D__, JTYPELIST<__A__, __B__>::typelist>
97 friend std::ostream&
operator<<(std::ostream& out,
const __D__&
object)
99 return out << static_cast<const __A__&>(object) <<
' '
100 << static_cast<const __B__&>(
object);
113 #define PRINT(OUT,OP,A,B) \
114 OUT << "(" << A << ") " << #OP " (" << B << ") => " << (A OP B) << std::endl;
123 int main(
int argc,
char **argv)
132 JParser<> zap(
"Example program to test object comparisons.");
138 catch(
const exception &error) {
139 FATAL(error.what() << endl);
147 PRINT(cout, ==, c1, c2);
148 PRINT(cout, !=, c1, c2);
149 PRINT(cout, ==, c1, c3);
150 PRINT(cout, !=, c1, c3);
151 PRINT(cout, ==, c1, c4);
152 PRINT(cout, !=, c1, c4);
163 PRINT(cout, ==, d1, d2);
164 PRINT(cout, !=, d1, d2);
165 PRINT(cout, ==, d1, d3);
166 PRINT(cout, !=, d1, d3);
167 PRINT(cout, ==, d1, d4);
168 PRINT(cout, !=, d1, d4);
Utility class to parse command line options.
int main(int argc, char *argv[])
Template definition of auxiliary base class for data structures composed of multiple base classes wit...
#define ASSERT(A,...)
Assert macro.
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
Template definition of auxiliary base class for comparison of data structures.
General purpose messaging.
TCanvas * c1
Global variables to handle mouse events.
Utility class to parse command line options.
then echo Launching message logger in new window xterm geometry e JGetMessage H $HOST T $TAG d3
bool equals(const JFirst_t &first, const JSecond_t &second, const double precision=std::numeric_limits< double >::min())
Check equality.
#define PRINT(OUT, OP, A, B)
Print.