DUNE-ACFEM (unstable)
Form a sub-sequence with the values at the positions NOT given in Indices. More...
Typedefs | |
template<class Seq , class Other > | |
using | SequenceSetMinus = typename impl::SequenceSetMinus< Seq, Other >::Type |
Generate the sequence with the indices from Seq not contained in Other. More... | |
template<class Seq , class Other > | |
using | SequenceSetIntersection = typename impl::SequenceSetIntersection< Seq, Other >::Type |
Generate the sequence with the indices from Seq also contained in Other. More... | |
template<class Seq0 , class Seq1 > | |
using | SequenceSetUnion = SequenceCat< Seq0, SequenceSetMinus< Seq1, Seq0 > > |
Generate the sequence with the elements from Seq0 and the elements from Seq1 which are not already contained in Seq0. More... | |
template<class Seq , std::size_t... Indices> | |
using | SubSequence = Sequence< typename Seq::value_type, Get< Indices, Seq >::value... > |
Create a subsequence containing all values designated by the positions given by Indices. More... | |
template<class Seq , class SliceIndices > | |
using | SequenceSlice = typename SliceExpander< Seq, SliceIndices >::Type |
Like SubSequence, but take the indices from another sequence. | |
template<class Seq > | |
using | ReverseSequence = typename ReverseSequenceHelper< Seq >::Type |
Generate the reverse sequence. | |
template<class In0 , class In1 , template< CXX17_P0522R0(class A, class B)> class Swap> | |
using | TypeTupleMerge = typename MergeTypeTupleHelper< TypeTuple<>, In0, In1, Swap >::Type |
Merge two sorted type-tuples into one sorted type-tuple. | |
template<class One , class Many , template< CXX17_P0522R0(class A, class B)> class Swap> | |
using | TypeTupleMergeOneLeft = typename MergeTypeTupleHelper< TypeTuple<>, TypeTuple< One >, Many, Swap >::Type |
Merge one element into an already sorted type-tuple. | |
template<class Many , class One , template< CXX17_P0522R0(class A, class B)> class Swap> | |
using | TypeTupleMergeOneRight = typename MergeTypeTupleHelper< TypeTuple<>, Many, TypeTuple< One >, Swap >::Type |
Merge one element into an already sorted type-tuple. | |
template<class T , class Tuple , template< CXX17_P0522R0(class A, class B)> class Unequal, template< CXX17_P0522R0(class A, class B)> class Swap = AlwaysFalse> | |
using | RemoveFirstMatching = typename RemoveMatchingHelper< T, TypeTuple<>, Tuple, Unequal, Swap >::Type |
Generate a new TypeTuple from Tuple by removing the first instance of T. More... | |
template<class... Tags> | |
using | RemoveImplied = typename RemoveImpliedType< TypeTuple< Tags... >, TypeTuple<> >::Type |
Remove types which are base classes of other types in the list. | |
Detailed Description
Form a sub-sequence with the values at the positions NOT given in Indices.
Typedef Documentation
◆ RemoveFirstMatching
using Dune::ACFem::MPL::RemoveFirstMatching = typedef typename RemoveMatchingHelper<T, TypeTuple<>, Tuple, Unequal, Swap>::Type |
Generate a new TypeTuple from Tuple by removing the first instance of T.
The search optionally stops when T becomes "smaller" than the current element according to the predicate Swap which could speed-up the search for sorted lists.
◆ SequenceSetIntersection
using Dune::ACFem::MPL::SequenceSetIntersection = typedef typename impl::SequenceSetIntersection<Seq, Other>::Type |
Generate the sequence with the indices from Seq also contained in Other.
The resulting sequence may contain duplicate indices if Seq contains matching duplicates.
◆ SequenceSetMinus
using Dune::ACFem::MPL::SequenceSetMinus = typedef typename impl::SequenceSetMinus<Seq, Other>::Type |
Generate the sequence with the indices from Seq not contained in Other.
The resulting sequence may contain duplicate indices if Seq contains matching duplicates.
◆ SequenceSetUnion
using Dune::ACFem::MPL::SequenceSetUnion = typedef SequenceCat<Seq0, SequenceSetMinus<Seq1, Seq0> > |
Generate the sequence with the elements from Seq0 and the elements from Seq1 which are not already contained in Seq0.
Note that the resulting sequence will contain duplicate elements iff Seq0 already contained duplicate indices.
◆ SubSequence
using Dune::ACFem::MPL::SubSequence = typedef Sequence<typename Seq::value_type, Get<Indices, Seq>::value...> |
Create a subsequence containing all values designated by the positions given by Indices.
This is cheap if Get is cheap ...