Boost C++ Libraries of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

This is the documentation for an old version of Boost. Click here to view this page for the latest version.

Struct template is_commutative

boost::mpi::is_commutative — Determine if a function object type is commutative.


template<typename Op, typename T> 
struct is_commutative {


This trait determines if an operation Op is commutative when applied to values of type T. Parallel operations such as reduce and prefix_sum can be implemented more efficiently with commutative operations. To mark an operation as commutative, users should specialize is_commutative and derive from the class mpl::true_.