20 static_assert(std::is_pointer<T>::value,
"Template must be of pointer type.");
23 virtual bool eq(
const T &arg1,
const T &arg2)
const override {
24 return (arg1 == arg2) || (arg1 && arg2 && equals(*arg1, *arg2));
27 virtual bool gt(
const T &arg1,
const T &arg2)
const override {
30 }
else if (arg1 && arg2) {
31 return greater(*arg1, *arg2);
37 virtual bool lt(
const T &arg1,
const T &arg2)
const override {
40 }
else if (arg1 && arg2) {
41 return lesser(*arg1, *arg2);
60 template <
typename... Args>
62 this->
init(arg1, args...);
65 virtual bool operator()(
const T &arg1,
const T &arg2)
const override {
66 return greater(*arg1, *arg2);
void init(const T &arg1)
Helper function for single object initialization.
Definition array.hpp:47
array()
Default constructor.
Definition array.hpp:112
virtual bool lt(const T &arg1, const T &arg2) const override
Check if one object is less than another.
Definition refArray.hpp:37
refArray()
Default constructor.
Definition refArray.hpp:49
virtual bool eq(const T &arg1, const T &arg2) const override
Check if two objects are equal.
Definition refArray.hpp:23
refArray(const T &arg1, const Args &...args)
List-initialized constructor.
Definition refArray.hpp:61
virtual bool gt(const T &arg1, const T &arg2) const override
Check if one object is greater than another.
Definition refArray.hpp:27
virtual bool operator()(const T &arg1, const T &arg2) const override
Callable operator.
Definition refArray.hpp:65
Section containing core functions and classes.