AutoPas  3.0.0
Loading...
Searching...
No Matches
checkFunctorType.h
Go to the documentation of this file.
1
8#pragma once
9
12
13namespace {
18std::false_type isPairwiseFunctorImpl(...);
25template <typename Particle_T, typename FunctorT>
27
32std::false_type isTriwiseFunctorImpl(...);
39template <typename Particle_T, typename FunctorT>
41} // namespace
42
43namespace autopas::utils {
48template <typename FunctorT>
49using isPairwiseFunctor = decltype(isPairwiseFunctorImpl(std::declval<FunctorT>()));
50
55template <typename FunctorT>
56using isTriwiseFunctor = decltype(isTriwiseFunctorImpl(std::declval<FunctorT>()));
57
58} // namespace autopas::utils
PairwiseFunctor class.
Definition: PairwiseFunctor.h:31
TriwiseFunctor class.
Definition: TriwiseFunctor.h:28
std::false_type isPairwiseFunctorImpl(...)
Returns false for any types that are not a PairwiseFunctor.
std::false_type isTriwiseFunctorImpl(...)
Returns false for any types that are not a TriwiseFunctor.
In this namespace some helper classes and functions can be found used inside of AutoPas.
Definition: namespaces.h:44
decltype(isTriwiseFunctorImpl(std::declval< FunctorT >())) isTriwiseFunctor
Check whether a Functor Type is inheriting from TriwiseFunctor.
Definition: checkFunctorType.h:56
decltype(isPairwiseFunctorImpl(std::declval< FunctorT >())) isPairwiseFunctor
Check whether a Functor Type is inheriting from PairwiseFunctor.
Definition: checkFunctorType.h:49