Query and search algorithms. More...
Modules | |
lazy | |
Typedefs | |
template<list_like L, invocable Fn> | |
using | meta::all_of = empty< find_if< L, not_fn< Fn > > > |
A Boolean integral constant wrapper around true if invoke<Fn, A>::value is true for all elements A in meta::list L ; false , otherwise. More... | |
template<list_like L, invocable Fn> | |
using | meta::any_of = not_< empty< find_if< L, Fn > > > |
A Boolean integral constant wrapper around true if invoke<Fn, A>::value is true for any element A in meta::list L ; false , otherwise. More... | |
template<list_like L, typename T > | |
using | meta::count = _t< detail::count_< L, T > > |
Count the number of times a type T appears in the list L . More... | |
template<list_like L, invocable Fn> | |
using | meta::count_if = _t< detail::count_if_< L, Fn > > |
Count the number of times the predicate Fn evaluates to true for all the elements in the list L . More... | |
template<list_like L, typename T > | |
using | meta::find = drop< L, min< find_index< L, T >, size< L > > > |
Return the tail of the list L starting at the first occurrence of T , if any such element exists; the empty list, otherwise. More... | |
template<list_like L, invocable Fn> | |
using | meta::find_if = _t< detail::find_if_< L, Fn > > |
Return the tail of the list L starting at the first element A such that invoke<Fn, A>::value is true , if any such element exists; the empty list, otherwise. More... | |
template<list_like L, typename T > | |
using | meta::find_index = _t< detail::find_index_< L, T > > |
Finds the index of the first occurrence of the type T within the list L . Returns #meta::npos if the type T was not found. More... | |
template<list_like L, typename T > | |
using | meta::in = not_< empty< find< L, T > > > |
A Boolean integral constant wrapper around true if there is at least one occurrence of T in L . More... | |
template<list_like L, invocable Fn> | |
using | meta::none_of = empty< find_if< L, Fn > > |
A Boolean integral constant wrapper around true if invoke<Fn, A>::value is false for all elements A in meta::list L ; false , otherwise. More... | |
template<list_like L, typename T > | |
using | meta::reverse_find = drop< L, min< reverse_find_index< L, T >, size< L > > > |
Return the tail of the list L starting at the last occurrence of T , if any such element exists; the empty list, otherwise. More... | |
template<list_like L, invocable Fn> | |
using | meta::reverse_find_if = _t< detail::reverse_find_if_< L, Fn > > |
Return the tail of the list L starting at the last element A such that invoke<Fn, A>::value is true , if any such element exists; the empty list, otherwise. More... | |
template<list_like L, typename T > | |
using | meta::reverse_find_index = _t< detail::reverse_find_index_< L, T > > |
Finds the index of the last occurrence of the type T within the list L . Returns #meta::npos if the type T was not found. More... | |
Query and search algorithms.
using meta::all_of = typedef empty<find_if<L, not_fn<Fn> >> |
#include <meta/meta.hpp>
A Boolean integral constant wrapper around true
if invoke<Fn, A>::value
is true
for all elements A
in meta::list
L
; false
, otherwise.
O(N)
. using meta::any_of = typedef not_<empty<find_if<L, Fn> >> |
#include <meta/meta.hpp>
A Boolean integral constant wrapper around true
if invoke<Fn, A>::value
is true
for any element A
in meta::list
L
; false
, otherwise.
O(N)
. using meta::count = typedef _t<detail::count_<L, T> > |
using meta::count_if = typedef _t<detail::count_if_<L, Fn> > |
#include <meta/meta.hpp>
Count the number of times the predicate Fn
evaluates to true for all the elements in the list L
.
O(N)
. using meta::find = typedef drop<L, min<find_index<L, T>, size<L> >> |
#include <meta/meta.hpp>
Return the tail of the list L
starting at the first occurrence of T
, if any such element exists; the empty list, otherwise.
O(N)
. using meta::find_if = typedef _t<detail::find_if_<L, Fn> > |
#include <meta/meta.hpp>
Return the tail of the list L
starting at the first element A
such that invoke<Fn, A>::value
is true
, if any such element exists; the empty list, otherwise.
O(N)
. using meta::find_index = typedef _t<detail::find_index_<L, T> > |
#include <meta/meta.hpp>
Finds the index of the first occurrence of the type T
within the list L
. Returns #meta::npos
if the type T
was not found.
O(N)
.meta::npos
#include <meta/meta.hpp>
A Boolean integral constant wrapper around true
if there is at least one occurrence of T
in L
.
O(N)
. using meta::none_of = typedef empty<find_if<L, Fn> > |
#include <meta/meta.hpp>
A Boolean integral constant wrapper around true
if invoke<Fn, A>::value
is false
for all elements A
in meta::list
L
; false
, otherwise.
O(N)
. using meta::reverse_find = typedef drop<L, min<reverse_find_index<L, T>, size<L> >> |
#include <meta/meta.hpp>
Return the tail of the list L
starting at the last occurrence of T
, if any such element exists; the empty list, otherwise.
O(N)
. using meta::reverse_find_if = typedef _t<detail::reverse_find_if_<L, Fn> > |
#include <meta/meta.hpp>
Return the tail of the list L
starting at the last element A
such that invoke<Fn, A>::value
is true
, if any such element exists; the empty list, otherwise.
O(N)
. using meta::reverse_find_index = typedef _t<detail::reverse_find_index_<L, T> > |
#include <meta/meta.hpp>
Finds the index of the last occurrence of the type T
within the list L
. Returns #meta::npos
if the type T
was not found.
O(N)
.#meta::npos