Return the index of a value which type satisfies a given predicate.
On record types, this function operates as if the elements are ordered. The considered order is the order of declaration.
#include <kumi/kumi.hpp>
#include <iostream>
#include <type_traits>
int main()
{
std::cout << std::boolalpha
std::cout << std::boolalpha <<
kumi::locate( t, [](
auto e) {
return e > 3; } ) <<
"\n";
}
constexpr auto locate(T &&t, Pred p) noexcept
Return the index of a value which type satisfies a given predicate.
Definition find.hpp:31
constexpr auto predicate() noexcept
Convert a unary template meta-program in a running predicate.
Definition ct_helpers.hpp:182
Fixed-size collection of heterogeneous values.
Definition tuple.hpp:33
#include <kumi/kumi.hpp>
#include <iostream>
#include <type_traits>
int main()
{
using namespace kumi::literals;
auto r =
kumi::record{
"a"_id = 1,
"b"_id = 2.,
"c"_id = 0ULL,
"d"_id = 3.f,
"e"_id =
'z'};
std::cout << std::boolalpha
std::cout << std::boolalpha <<
kumi::locate( r, [](
auto e) {
return e > 3; } ) <<
"\n";
}
Fixed-size collection of heterogeneous tagged fields, tags are unique.
Definition record.hpp:36