C++ Essence Library 0.1.0
A Utility Library for Modern C++ Programming
Loading...
Searching...
No Matches
essence::filter_array< GetArray, Predicate > Struct Template Reference

Public Types

using value_type = typename decltype(GetArray())::value_type
 

Static Public Attributes

static constexpr auto value
 

Member Data Documentation

◆ value

template<auto GetArray, auto Predicate>
auto essence::filter_array< GetArray, Predicate >::value
staticconstexpr
Initial value:
= [] {
constexpr auto array = GetArray();
constexpr auto actual_size = std::count_if(array.begin(), array.end(), Predicate);
std::size_t index{};
std::array<value_type, actual_size> result{};
for (auto&& item : array) {
if (Predicate(item)) {
result[index++] = item;
}
}
return result;
}()

The documentation for this struct was generated from the following file: