Loading...
Searching...
No Matches
utility.hh File Reference
`#include <utility>`
`#include <type_traits>`
`#include <dune/common/overloadset.hh>`
`#include <dune/common/indices.hh>`
`#include <dune/functions/common/functionconcepts.hh>`

Go to the source code of this file.

## Classes

struct | Dune::Functions::LastType< T >
| Get last entry of type list. More...
struct | Dune::Functions::RotateTuple< T >
| Rotate type list by one, such that last entry is moved to first position. More...

## Namespaces

namespace | Dune
namespace | Dune::Functions

## Typedefs

template<template< class... > class T, class ArgTuple>
using | Dune::Functions::ExpandTuple = typename Imp::ExpandTupleHelper<T, ArgTuple>::Type
| Expand tuple arguments as template arguments.
template<template< class... > class F, class... Tuples>
using | Dune::Functions::TransformTuple = typename Imp::TransformTupleHelper<F, Tuples...>::Type
| Transform tuple types argument using type-functor.
template<class IntegerSequence>
using | Dune::Functions::IntegerSequenceTuple = typename Imp::IntegerSequenceTupleHelper<IntegerSequence>::Type
| Transform integer_sequence<I,k...> to tuple<integral_constant<I,k>...>.

## Functions

template<class F, class size_type, size_type firstValue, class... Args>
auto | Dune::Functions::forwardAsStaticInteger (std::integer_sequence< size_type, firstValue > values, const size_type &i, F &&f, Args &&... args) -> decltype(f(std::integral_constant< size_type, firstValue >(), std::forward< Args >(args)...))
template<class F, class size_type, size_type firstValue, size_type secondValue, size_type... otherValues, class... Args>
auto | Dune::Functions::forwardAsStaticInteger (std::integer_sequence< size_type, firstValue, secondValue, otherValues... > values, const size_type i, F &&f, Args &&... args) -> decltype(f(std::integral_constant< size_type, firstValue >(), std::forward< Args >(args)...))
template<std::size_t end, class F, class size_type, class... Args>
auto | Dune::Functions::forwardAsStaticIndex (const size_type &i, F &&f, Args &&... args) -> decltype(f(Dune::Indices::_0, std::forward< Args >(args)...))
| Transform dynamic index to static index_constant.
template<class F, class... T>
auto | Dune::Functions::transformTuple (F &&f, const std::tuple< T... > &tuple) -> decltype(Imp::transformTupleHelper(std::forward< F >(f), tuple, std::index_sequence_for< T... >{}))
| Transform tuple value using a functor.
template<class F, class... T1, class... T2>
auto | Dune::Functions::transformTuple (F &&f, const std::tuple< T1... > &tuple1, const std::tuple< T2... > &tuple2) -> decltype(Imp::transformTupleHelper(std::forward< F >(f), tuple1, tuple2, std::index_sequence_for< T1... >{}))
| Transform tuple value using a binary functor.
template<class Expression>
auto | Dune::Functions::callableCheck (Expression f)
| Create a predicate for checking validity of expressions.
template<class Check>
auto | Dune::Functions::negatePredicate (Check check)
| Negate given predicate.
template<class T>
auto | Dune::Functions::forwardCapture (T &&t)
| Create a capture object for perfect forwarding.