SUNphi
1.0
|
Implements a struct holding a sequence of integers. More...
#include <array>
#include <ints/IntListOperations.hpp>
#include <ints/IntListOrder.hpp>
#include <ints/IntListGetEl.hpp>
#include <metaprogramming/TypeTraits.hpp>
#include <metaprogramming/UniversalReferences.hpp>
Go to the source code of this file.
Classes | |
struct | SUNphi::BaseIntSeq |
struct | SUNphi::ConstrainAreIntSeqs< Args > |
struct | SUNphi::IntSeq< Ints > |
struct | SUNphi::IntSeq< Ints >::_AppendFirstN< bool, N, Right > |
struct | SUNphi::IntSeq< Ints >::_AppendFirstN< true, N, IntSeq< HeadR, TailR... > > |
struct | SUNphi::IntSeq< Ints >::_AppendFirstN< false, N, IntSeq< R... > > |
struct | SUNphi::ConstrainIsOrderedIntSeq< T, typename > |
Constrain the IntSeq to be ordered. More... | |
struct | SUNphi::ConstrainIsOrderedUniqueIntSeq< T, typename > |
Constrain the IntSeq to be ordered and unique. More... | |
Typedefs | |
template<typename T , typename Ret = void> | |
using | SUNphi::EnableIfIsIntSeq = EnableIf< isIntSeq< T >,Ret > |
template<typename T > | |
using | SUNphi::ConstrainIsIntSeq = ConstrainIsBaseOf< BaseIntSeq,T > |
template<typename T > | |
using | SUNphi::ConstrainIsNotIntSeq = ConstrainIsNotBaseOf< BaseIntSeq,T > |
Variables | |
template<typename T > | |
constexpr bool | SUNphi::isIntSeq = isBaseOf<BaseIntSeq ,T> |
template<int... Ints> | |
decltype(auto) constexpr | SUNphi::intSeq |
Create an IntSeq with given types. More... | |
template<typename T > | |
constexpr bool | SUNphi::isOrderedIntSeq |
template<int... Ints> | |
constexpr bool | SUNphi::isOrderedIntSeq< IntSeq< Ints... > > |
Implements a struct holding a sequence of integers.
Definition in file IntSeq.hpp.
using SUNphi::ConstrainIsIntSeq = typedef ConstrainIsBaseOf<BaseIntSeq ,T> |
Class forcing T to inherits from BaseIntSeq
Definition at line 18 of file IntSeq.hpp.
using SUNphi::ConstrainIsNotIntSeq = typedef ConstrainIsNotBaseOf<BaseIntSeq ,T> |
Class forcing T not to inherits from BaseIntSeq
Definition at line 18 of file IntSeq.hpp.
using SUNphi::EnableIfIsIntSeq = typedef EnableIf< isIntSeq <T> ,Ret> |
Provides the class itself if T is of the given type
Provides the class itself if T satisfies the condition
Definition at line 18 of file IntSeq.hpp.
decltype(auto) constexpr SUNphi::intSeq |
Create an IntSeq with given types.
Definition at line 199 of file IntSeq.hpp.
constexpr bool SUNphi::isIntSeq = isBaseOf<BaseIntSeq ,T> |
Expression which is true if T inherits from BaseIntSeq
Definition at line 18 of file IntSeq.hpp.
constexpr bool SUNphi::isOrderedIntSeq |
Identifies whether a type is an ordered IntSeq
General case
Definition at line 209 of file IntSeq.hpp.
constexpr bool SUNphi::isOrderedIntSeq< IntSeq< Ints... > > |
Identifies whether a type is an ordered IntSeq
General case
Definition at line 216 of file IntSeq.hpp.