waLBerla 7.2
Loading...
Searching...
No Matches
OperatorCheck.h File Reference
#include <algorithm>
#include <functional>
#include <iostream>
#include <string>
#include <utility>

Classes

struct  walberla::debug::op_valid_impl< X, Y, Op >
 The implementation is directly taken from https://stackoverflow.com/a/39348287. More...
 
struct  walberla::debug::notstd::left_shift
 
struct  walberla::debug::notstd::right_shift
 

Namespaces

namespace  walberla
 Storage for detected contacts which can be used to perform actions for all contacts, e.g.
 
namespace  walberla::debug
 
namespace  walberla::debug::notstd
 

Typedefs

template<class X , class Y , class Op >
using walberla::debug::op_valid = typename op_valid_impl<X, Y, Op>::type
 
template<class X , class Y >
using walberla::debug::has_equality = op_valid<X, Y, std::equal_to<>>
 
template<class X , class Y >
using walberla::debug::has_inequality = op_valid<X, Y, std::not_equal_to<>>
 
template<class X , class Y >
using walberla::debug::has_less_than = op_valid<X, Y, std::less<>>
 
template<class X , class Y >
using walberla::debug::has_less_equal = op_valid<X, Y, std::less_equal<>>
 
template<class X , class Y >
using walberla::debug::has_greater_than = op_valid<X, Y, std::greater<>>
 
template<class X , class Y >
using walberla::debug::has_greater_equal = op_valid<X, Y, std::greater_equal<>>
 
template<class X , class Y >
using walberla::debug::has_bit_xor = op_valid<X, Y, std::bit_xor<>>
 
template<class X , class Y >
using walberla::debug::has_bit_or = op_valid<X, Y, std::bit_or<>>
 
template<class X , class Y >
using walberla::debug::has_left_shift = op_valid<X, Y, notstd::left_shift>
 
template<class X , class Y >
using walberla::debug::has_right_shift = op_valid<X, Y, notstd::right_shift>