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;
132 JParser<> zap(
"Example program to test object comparisons.");
138 catch(
const exception &error) {
139 FATAL(error.what() << endl);
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);
TCanvas * c1
Global variables to handle mouse events.
General purpose messaging.
#define ASSERT(A,...)
Assert macro.
int main(int argc, char **argv)
#define PRINT(OUT, OP, A, B)
Print.
Utility class to parse command line options.
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
Utility class to parse command line options.
bool equals(const JFirst_t &first, const JSecond_t &second, const double precision=std::numeric_limits< double >::min())
Check equality.
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
Template definition of auxiliary base class for comparison of data structures.
Template definition of auxiliary base class for data structures composed of multiple base classes wit...