21#ifndef LIBMESH_PARALLEL_ALGORITHMS_H
22#define LIBMESH_PARALLEL_ALGORITHMS_H
25#include "libmesh/libmesh_config.h"
32#ifdef LIBMESH_HAVE_CXX17_TRANSFORM_REDUCE
33template <
typename InputIt,
class T,
class BinaryOp,
class UnaryOp>
36 return std::transform_reduce(begin, end, init, reduce, transform);
39template <
typename InputIt,
class T,
class BinaryOp,
class UnaryOp>
46 for (
auto it = begin; it != end; ++it)
47 init = reduce(init, transform(*it));
void init(triangulateio &t)
Initializes the fields of t to nullptr/0 as necessary.
T libmesh_transform_reduce(InputIt begin, InputIt end, T init, BinaryOp reduce, UnaryOp transform)