mappend

Synopsis

template <class MonadTag, class A, class B>
struct mappend
{
  // unspecified
};

Description

mappend is a metafunction for the mappend operation of the monoid typeclass.

#include <mpllibs/metamonad/mappend.hpp>

Expression semantics

For any monad_tag tag and a and b classes:

mappend<monad_tag, a, b>

is equivalent to

apply<monoid<monad_tag>::mappend, a, b>

Example

using boost::mpl::list_c;

typedef
  mappend<
    list_tag,
    list_c<int, 0, 1, 2, 3, 4>,
    list_c<int, 5, 6, 7, 8, 9>
  >::type
  list_0_to_10;

[up]