Dune Core Modules (unstable)

Dune::Hybrid Namespace Reference

Namespace with loops, conditionals and other constructs that can handle both compile-time and run-time conditions. More...

Classes

class  HybridFunctor
 Adapter of a hybrid functor that maintains results hybrid. More...
 

Functions

template<class T >
constexpr auto size (const T &t)
 Size query. More...
 
template<class Container , class Index >
constexpr decltype(auto) elementAt (Container &&c, Index &&i)
 Get element at given position from container. More...
 
template<class Begin , class End >
constexpr auto integralRange (const Begin &begin, const End &end)
 Create an integral range. More...
 
template<class End >
constexpr auto integralRange (const End &end)
 Create an integral range starting from 0. More...
 
template<class Range , class F >
constexpr void forEach (Range &&range, F &&f)
 Range based for loop. More...
 
template<class Range , class T , class F >
constexpr T accumulate (Range &&range, T value, F &&f)
 Accumulate values. More...
 
template<class Condition , class IfFunc , class ElseFunc >
decltype(auto) ifElse (const Condition &condition, IfFunc &&ifFunc, ElseFunc &&elseFunc)
 A conditional expression. More...
 
template<class Condition , class IfFunc >
void ifElse (const Condition &condition, IfFunc &&ifFunc)
 A conditional expression. More...
 
template<class Functor >
constexpr HybridFunctor< Functor > hybridFunctor (const Functor &)
 Returns an HybridFunctor adaptor. More...
 
template<class Cases , class Value , class Branches , class ElseBranch >
constexpr decltype(auto) switchCases (const Cases &cases, const Value &value, Branches &&branches, ElseBranch &&elseBranch)
 Switch statement. More...
 
template<class Cases , class Value , class Branches >
constexpr void switchCases (const Cases &cases, const Value &value, Branches &&branches)
 Switch statement. More...
 
template<class T , class Value , class Branches >
constexpr void switchCases (IntegralRange< T > range, const Value &value, Branches &&branches)
 Switch statement. More...
 

Variables

constexpr auto max = hybridFunctor(Impl::Max{})
 Function object that returns the greater of the given values. More...
 
constexpr auto min = hybridFunctor(Impl::Min{})
 Function object that returns the smaller of the given values. More...
 
constexpr auto plus = hybridFunctor(std::plus<>{})
 Function object for performing addition. More...
 
constexpr auto minus = hybridFunctor(std::minus<>{})
 Function object for performing subtraction. More...
 
constexpr auto equal_to = hybridFunctor(std::equal_to<>{})
 Function object for performing equality comparison. More...
 

Detailed Description

Namespace with loops, conditionals and other constructs that can handle both compile-time and run-time conditions.

Function Documentation

◆ hybridFunctor()

template<class Functor >
constexpr HybridFunctor< Functor > Dune::Hybrid::hybridFunctor ( const Functor &  )
constexpr

Returns an HybridFunctor adaptor.

See also
HybridFunctor
Creative Commons License   |  Legal Statements / Impressum  |  Hosted by TU Dresden & Uni Heidelberg  |  generated with Hugo v0.111.3 (Jan 8, 23:33, 2026)