Boost.Hana  1.0.2 Your standard library for metaprogramming
Concepts

## Description

Concepts provided by the library.

## Modules

Applicative
The Applicative concept represents Functors with the ability to lift values and combine computations.

The Comonad concept represents context-sensitive computations and data.

Comparable
The Comparable concept defines equality and inequality.

Constant
The Constant concept represents data that can be manipulated at compile-time.

Euclidean Ring
The EuclideanRing concept represents a commutative Ring that can also be endowed with a division algorithm.

Foldable
The Foldable concept represents data structures that can be reduced to a single value.

Functor
The Functor concept represents types that can be mapped over.

Group
The Group concept represents Monoids where all objects have an inverse w.r.t. the Monoid's binary operation.

Hashable
The Hashable concept represents objects that can be normalized to a type-level hash.

Iterable
The Iterable concept represents data structures supporting external iteration.

Logical
The Logical concept represents types with a truth value.

Metafunction
A Metafunction is a function that takes hana::types as inputs and returns a hana::type as output.

The Monad concept represents Applicatives with the ability to flatten nested levels of structure.

The MonadPlus concept represents Monads with a monoidal structure.

Monoid
The Monoid concept represents data types with an associative binary operation that has an identity.

Orderable
The Orderable concept represents totally ordered data types.

Product
Represents types that are generic containers of two elements.

Ring
The Ring concept represents Groups that also form a Monoid under a second binary operation that distributes over the first.

Searchable
The Searchable concept represents structures that can be searched.

Sequence
The Sequence concept represents generic index-based sequences.

Struct
The Struct concept represents struct-like user-defined types.

## Classes

struct  boost::hana::IntegralConstant< C >
The IntegralConstant concept represents compile-time integral values. More...