5 #ifndef JODA_EQUALIZEPREDICATE_H
6 #define JODA_EQUALIZEPREDICATE_H
8 #include "../../../../../values/include/joda/query/values/IValueProvider.h"
17 virtual const char *what()
const throw() {
18 return "The given values are not comparable by '==' or '!='";
28 std::unique_ptr<IValueProvider> &&
rhs,
bool equal);
37 std::unique_ptr<IValueProvider> &
getLhs();
38 std::unique_ptr<IValueProvider> &
getRhs();
42 std::unique_ptr<IValueProvider>
lhs;
43 std::unique_ptr<IValueProvider>
rhs;
Definition: RapidJsonDocument.h:22
Definition: EqualizePredicate.h:25
bool check(const RapidJsonDocument &val) override
Definition: EqualizePredicate.cpp:8
std::unique_ptr< IValueProvider > rhs
Definition: EqualizePredicate.h:43
std::unique_ptr< Predicate > duplicate()
Definition: EqualizePredicate.cpp:50
bool equal
Definition: EqualizePredicate.h:44
std::vector< std::string > getAttributes() const
Definition: EqualizePredicate.cpp:43
std::unique_ptr< IValueProvider > & getLhs()
Definition: EqualizePredicate.cpp:55
EqualizePredicate(std::unique_ptr< IValueProvider > &&lhs, std::unique_ptr< IValueProvider > &&rhs, bool equal)
Definition: EqualizePredicate.cpp:26
std::unique_ptr< IValueProvider > lhs
Definition: EqualizePredicate.h:42
bool isEqual() const
Definition: EqualizePredicate.cpp:62
bool isCompatible(Predicate *other) override
Definition: EqualizePredicate.cpp:12
std::string getType() override
Definition: EqualizePredicate.cpp:17
std::string toString()
Definition: EqualizePredicate.cpp:34
void accept(class PredicateVisitor &v) override
Definition: EqualizePredicate.cpp:21
std::unique_ptr< IValueProvider > & getRhs()
Definition: EqualizePredicate.cpp:59
Definition: EqualizePredicate.h:16
Definition: PredicateVisitor.h:29
Definition: Predicate.h:20
Definition: AttributeStatAggregator.h:12