Menu

relational_operators.h File Reference

#include "mw/attributes/filter/greater_than.h"
#include "mw/attributes/filter/greater_than_or_equal_to.h"
#include "mw/attributes/filter/less_than.h"
#include "mw/attributes/filter/less_than_or_equal_to.h"
#include "mw/attributes/filter/equal_to.h"
#include "mw/attributes/filter/not_equal_to.h"
#include "mw/attributes/filter/logical_or.h"
#include "mw/attributes/filter/logical_and.h"
#include "mw/attributes/filter/logical_not.h"
#include "mw/attributes/filter/BinaryFilterExpression.h"
#include "mw/attributes/filter/UnaryFilterExpression.h"
#include "mw/attributes/filter/RelationalOperatorFilterReturnTypeCalculator.h"

Go to the source code of this file.

Namespaces

namespace  famouso
namespace  famouso::mw
namespace  famouso::mw::attributes
namespace  famouso::mw::attributes::filter

Defines

#define OPERATOR(op, op_class, p1, p2)
 Macro for the generation of relational operators. The generated operators can be used in lambda filter-expression.

Define Documentation

#define OPERATOR ( op,
op_class,
p1,
p2   ) 
Value:
template< class A, class B >                                            \
    static inline                                                           \
    const UnaryFilterExpression< typename                                   \
        filter::RelationalOperatorFilterReturnTypeCalculator<               \
            A,                                                              \
            B,                                                              \
            op_class                                                        \
        >::type                                                             \
    >                                                                       \
    operator op (const p1, const p2) {                                      \
        typedef typename                                                    \
            filter::RelationalOperatorFilterReturnTypeCalculator<           \
                A,                                                          \
                B,                                                          \
                op_class                                                    \
            >::type ReturnType;                                             \
        return UnaryFilterExpression< ReturnType > (ReturnType(b));         \
    }

Macro for the generation of relational operators. The generated operators can be used in lambda filter-expression.