use traits

release/4.3a0
Frank Dellaert 2015-07-11 13:50:53 -07:00
parent 85e2e3bd2a
commit 022af8f9bc
1 changed files with 9 additions and 9 deletions

View File

@ -49,15 +49,15 @@ bool equality(const T& input = T()) {
return input==output; return input==output;
} }
// This version requires equals // This version requires Testable
template<class T> template<class T>
bool equalsObj(const T& input = T()) { bool equalsObj(const T& input = T()) {
T output; T output;
roundtrip<T>(input,output); roundtrip<T>(input,output);
return input.equals(output); return traits<T>::Equals(input, output);
} }
// De-referenced version for pointers // De-referenced version for pointers, requires equals method
template<class T> template<class T>
bool equalsDereferenced(const T& input) { bool equalsDereferenced(const T& input) {
T output; T output;
@ -84,15 +84,15 @@ bool equalityXML(const T& input = T()) {
return input==output; return input==output;
} }
// This version requires equals // This version requires Testable
template<class T> template<class T>
bool equalsXML(const T& input = T()) { bool equalsXML(const T& input = T()) {
T output; T output;
roundtripXML<T>(input,output); roundtripXML<T>(input,output);
return input.equals(output); return traits<T>::Equals(input, output);
} }
// This version is for pointers // This version is for pointers, requires equals method
template<class T> template<class T>
bool equalsDereferencedXML(const T& input = T()) { bool equalsDereferencedXML(const T& input = T()) {
T output; T output;
@ -119,15 +119,15 @@ bool equalityBinary(const T& input = T()) {
return input==output; return input==output;
} }
// This version requires equals // This version requires Testable
template<class T> template<class T>
bool equalsBinary(const T& input = T()) { bool equalsBinary(const T& input = T()) {
T output; T output;
roundtripBinary<T>(input,output); roundtripBinary<T>(input,output);
return input.equals(output); return traits<T>::Equals(input, output);
} }
// This version is for pointers // This version is for pointers, requires equals method
template<class T> template<class T>
bool equalsDereferencedBinary(const T& input = T()) { bool equalsDereferencedBinary(const T& input = T()) {
T output; T output;