thrust

◆ all_of() [1/2]

template<typename DerivedPolicy , typename InputIterator , typename Predicate >
__host__ __device__ bool thrust::all_of ( const thrust::detail::execution_policy_base< DerivedPolicy > &  exec,
InputIterator  first,
InputIterator  last,
Predicate  pred 
)

all_of determines whether all elements in a range satify a predicate. Specifically, all_of returns true if pred(*i) is true for every iterator i in the range [first, last) and false otherwise.

The algorithm's execution is parallelized as determined by exec.

Parameters
execThe execution policy to use for parallelization.
firstThe beginning of the sequence.
lastThe end of the sequence.
predA predicate used to test range elements.
Returns
true, if all elements satisfy the predicate; false, otherwise.
Template Parameters
DerivedPolicyThe name of the derived execution policy.
InputIteratoris a model of Input Iterator,
Predicatemust be a model of Predicate.
#include <thrust/logical.h>
...
bool A[3] = {true, true, false};
thrust::all_of(thrust::host, A, A + 2, thrust::identity<bool>()); // returns true
thrust::all_of(thrust::host, A, A + 3, thrust::identity<bool>()); // returns false
// empty range
See also
any_of
none_of
transform_reduce