ΒΆtemplate <
typename IterTy,
typename Pred = bool (*)(
const decltype(*std::declval<IterTy>())&)>
bool hasNItemsOrMore(
IterTy&& Begin,
IterTy&& End,
unsigned int N,
Pred&& ShouldBeCounted =
[](const decltype(*std::declval<
type - parameter - 0 -
0>())&) {
return true;
},
std::enable_if_t<
!std::is_base_of<
std::random_access_iterator_tag,
typename std::iterator_traits<
std::remove_reference_t<
decltype(Begin)>>::
iterator_category>::value,
void>* = nullptr)
template <
typename IterTy,
typename Pred = bool (*)(
const decltype(*std::declval<IterTy>())&)>
bool hasNItemsOrMore(
IterTy&& Begin,
IterTy&& End,
unsigned int N,
Pred&& ShouldBeCounted =
[](const decltype(*std::declval<
type - parameter - 0 -
0>())&) {
return true;
},
std::enable_if_t<
!std::is_base_of<
std::random_access_iterator_tag,
typename std::iterator_traits<
std::remove_reference_t<
decltype(Begin)>>::
iterator_category>::value,
void>* = nullptr)
Description
Return true if the sequence [Begin, End) has N or more items. Runs in O(N) time. Not meant for use with random-access iterators. Can optionally take a predicate to lazily filter some items.
Declared at: llvm/include/llvm/ADT/STLExtras.h:2151
Templates
- IterTy
- Pred = bool (*)(const decltype(* std::declval<IterTy>()) &)
Parameters
- IterTy&& Begin
- IterTy&& End
- unsigned int N
- Pred&& ShouldBeCounted = [](const decltype(* std::declval<type-parameter-0-0>()) &) { return true; }
- std::enable_if_t< !std::is_base_of< std::random_access_iterator_tag, typename std::iterator_traits< std::remove_reference_t< decltype(Begin)>>:: iterator_category>::value, void>* = nullptr