Loading...
Searching...
No Matches
tupleutility.hh File Reference
Common » Utilities » Tuple Utilities

Contains utility classes which can be used with std::tuple. More...

`#include <cstddef>`
`#include <tuple>`
`#include <type_traits>`
`#include <utility>`
`#include <dune/common/hybridutilities.hh>`
`#include <dune/common/typetraits.hh>`

Go to the source code of this file.

## Classes

struct | Dune::TupleAccessTraits< T >
struct | Dune::TupleAccessTraits< T * >
struct | Dune::TupleAccessTraits< T & >
struct | Dune::NullPointerInitialiser< std::tuple< Args... > >
struct | Dune::ForEachType< TE, std::tuple< Args... > >
class | Dune::TransformTupleFunctor< TE, Args >
struct | Dune::TransformTupleFunctor< TE, Args >::TypeEvaluator< T >
struct | Dune::AddRefTypeEvaluator< T >
| `TypeEvaluator` to turn a type `T` into a reference to `T` More...
struct | Dune::AddPtrTypeEvaluator< T >
| `TypeEvaluator` to turn a type `T` into a pointer to `T` More...
struct | Dune::AddPtrTypeEvaluator< T & >
struct | Dune::AtType< N, Tuple >
| Type for reverse element access. More...
struct | Dune::At< N >
| Reverse element access. More...
struct | Dune::PointerPairDeletor< Tuple >
| Deletes all objects pointed to in a std::tuple of pointers. More...
class | Dune::FirstPredicateIndex< Tuple, Predicate, start, size >
| Finding the index of a certain type in a std::tuple. More...
struct | Dune::IsType< T >
| Generator for predicates accepting one particular type. More...
struct | Dune::IsType< T >::Predicate< U >
| The actual predicate. More...
struct | Dune::FirstTypeIndex< Tuple, T, start >
| Find the first occurrence of a type in a std::tuple. More...
struct | Dune::PushBackTuple< typename std::tuple< Args... >, T >
struct | Dune::PushFrontTuple< typename std::tuple< Args... >, T >
struct | Dune::ReduceTuple< F, Tuple, Seed, N >
| Apply reduce with meta binary function to template. More...
struct | Dune::ReduceTuple< F, Tuple, Seed, 0 >
| Apply reduce with meta binary function to template. More...
struct | Dune::JoinTuples< Head, Tail >
| Join two std::tuple's. More...
struct | Dune::FlattenTuple< Tuple >
| Flatten a std::tuple of std::tuple's. More...

## Namespaces

namespace | Dune
| Dune namespace

## Functions

template<class F, class ArgTuple, class I, I... i>
decltype(auto) | Dune::applyPartial (F &&f, ArgTuple &&args, std::integer_sequence< I, i... >)
| Apply function with arguments from a given tuple.
template<class Tuple, class Functor>
auto | Dune::genericTransformTuple (Tuple &&t, Functor &&f) -> decltype(genericTransformTupleBackend(t, f))
template<template< class > class TE, class... Args>
TransformTupleFunctor< TE, Args... > | Dune::makeTransformTupleFunctor (Args &&... args)
template<template< class > class TypeEvaluator, class Tuple, class... Args>
auto | Dune::transformTuple (Tuple &&orig, Args &&... args) -> decltype(genericTransformTuple(orig, makeTransformTupleFunctor< TypeEvaluator >(args...)))

## Detailed Description

Contains utility classes which can be used with std::tuple.