dune-fem 2.8.0
Loading...
Searching...
No Matches
Classes | Namespaces | Functions
bindguard.hh File Reference
#include <memory>
#include <tuple>
#include <utility>
#include <dune/common/typeutilities.hh>

Go to the source code of this file.

Classes

struct  Dune::Fem::BindGuard< Object >
 
struct  Dune::Fem::isBindable< Object, Args >
 

Namespaces

namespace  Dune
 
namespace  Dune::Fem
 

Functions

template<class Object , class... Args>
static auto Dune::Fem::bindGuard (Object &object, Args &&... args) -> std::enable_if_t< isBindable< Object, Args... >::value, BindGuard< Object > >
 
template<std::size_t... i, class Objects , class... Args>
static auto Dune::Fem::bindGuard (std::index_sequence< i... >, Objects objects, Args &&... args) -> std::tuple< decltype(bindGuard(std::declval< std::tuple_element_t< i, Objects > >(), std::declval< Args >()...))... >
 
template<class... Object, class... Args>
static auto Dune::Fem::bindGuard (std::tuple< Object &... > objects, Args &&... args) -> decltype(bindGuard(std::index_sequence_for< Object... >(), objects, std::forward< Args >(args)...))