VCCC  2024.05
VisualCamp Common C++ library
sequence_for_each.hpp File Reference
#include <cstddef>
#include <type_traits>
#include <utility>
#include "vccc/__functional/identity.hpp"
#include "vccc/__functional/invoke.hpp"
#include "vccc/__type_traits/conjunction.hpp"
#include "vccc/__type_traits/is_invocable.hpp"

Go to the source code of this file.

Namespaces

 vccc
 

Functions

template<typename T , T... v, typename F >
constexpr std::enable_if_t< detail::sequence_for_each_invocable< std::integer_sequence< T, v... >, F >::value > sequence_for_each (std::integer_sequence< T, v... >, F &&f)
 performs f(std::integral_constant<T, i>{}) for i in v... More...
 
template<typename T , T N, typename F >
constexpr std::enable_if_t< detail::sequence_for_each_invocable< std::make_integer_sequence< T, N >, F >::value > sequence_for_each (F &&f)
 performs f(std::integral_constant<T, i>{}) for i in [0, N) More...
 
template<std::size_t N, typename F >
constexpr std::enable_if_t< detail::sequence_for_each_invocable< std::make_index_sequence< N >, F >::value > sequence_for_each (F &&f)
 performs f(std::integral_constant<std::size_t, i>{}) for i in [0, N) More...