distortos  v0.4.0
object-oriented C++ RTOS for microcontrollers
apply.hpp File Reference

apply() header More...

#include "estd/IntegerSequence.hpp"
#include "estd/invoke.hpp"
#include <tuple>
Include dependency graph for apply.hpp:

Go to the source code of this file.

Namespaces

 estd
 Collection of useful templates.
 
 estd::internal
 Internals of estd namespace - should not be used directly!
 

Functions

template<typename Function , typename Tuple , std::size_t... Indexes>
constexpr auto estd::internal::apply (Function &&function, Tuple &&tuple, estd::IndexSequence< Indexes... >) -> decltype(estd::invoke(std::forward< Function >(function), std::get< Indexes >(std::forward< Tuple >(tuple))...))
 Implementation of apply() More...
 
template<typename Function , typename Tuple >
constexpr auto estd::apply (Function &&function, Tuple &&tuple) -> decltype(internal::apply(std::forward< Function >(function), std::forward< Tuple >(tuple), estd::MakeIndexSequence< std::tuple_size< typename std::decay< Tuple >::type >
 Invokes callable object with a tuple of arguments. More...
 

Detailed Description

apply() header

Author
Copyright (C) 2015 Kamil Szczygiel http://www.distortec.com http://www.freddiechopin.info
License
This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/.