Boost.Hana  1.6.0
Your standard library for metaprogramming
Class List
Here are the classes, structs, unions and interfaces with brief descriptions:
[detail level 12345]
 Nboost
 Nfusion
 CdequeAdapter for Boost.Fusion deques
 ClistAdapter for Boost.Fusion lists
 CtupleAdapter for Boost.Fusion tuples
 CvectorAdapter for Boost.Fusion vectors
 NhanaNamespace containing everything in the library
 Nconstant_detail
 Cwhich
 Ndetail
 Noperators
 CadlEnables ADL in the hana::detail::operators namespace
 Cany_ofReturns whether the Predicate is satisfied by any of the T...
 CarrayA minimal std::array with better constexpr support
 CCanonicalConstantTag representing a canonical Constant
 CcreateImplementation of the generic std::make_xxx pattern for arbitrary xxxs
 CdecayEquivalent to std::decay, except faster
 Cfirst_unsatisfied_indexReturns the index of the first element which does not satisfy Pred, or sizeof...(Xs) if no such element exists
 Chas_duplicatesReturns whether any of the Ts are duplicate w.r.t. hana::equal
 Cnested_byProvides a .by static constexpr function object
 Cnested_thanProvides a .than static constexpr function object
 Cnested_toProvides a .to static constexpr function object
 Cstd_common_typeEquivalent to std::common_type, except it is SFINAE-friendly and does not support custom specializations
 Ctype_atClassic MPL-style metafunction returning the nth element of a type parameter pack
 CwrongEquivalent to a type-dependent std::false_type
 Nexperimental
 CtypesContainer optimized for holding types
 Cbasic_tupleStripped down version of hana::tuple
 Cbasic_tuple_tagTag representing hana::basic_tuple
 Cbasic_typeBase class of hana::type; used for pattern-matching
 CcommonMetafunction returning the common data type between two data types
 Cdefault_Mark a tag-dispatched method implementation as a default implementation
 CembeddingMarks a conversion between data types as being an embedding
 Chas_commonMetafunction returning whether two data types share a common data type
 Cintegral_constantCompile-time value of an integral type
 Cintegral_constant_tagTag representing hana::integral_constant
 CIntegralConstantThe IntegralConstant concept represents compile-time integral values
 Cis_convertibleReturns whether there is a Hana-conversion from a data type to another
 Cis_defaultReturns whether a tag-dispatched method implementation is a default implementation
 Cis_embeddedReturns whether a data type can be embedded into another data type
 Clazyhana::lazy implements superficial laziness via a monadic interface
 Clazy_tagTag representing hana::lazy
 CmapBasic associative container requiring unique, Comparable and Hashable keys
 Cmap_tagTag representing hana::maps
 CoptionalOptional value whose optional-ness is known at compile-time
 Coptional_tagTag representing a hana::optional
 CpairGeneric container for two elements
 Cpair_tagTag representing hana::pair
 CrangeCompile-time half-open interval of hana::integral_constants
 Crange_tagTag representing a hana::range
 CsetBasic unordered container requiring unique, Comparable and Hashable keys
 Cset_tagTag representing the hana::set container
 CstringCompile-time string
 Cstring_tagTag representing a compile-time string
 Ctag_ofMetafunction returning the tag associated to T
 CtupleGeneral purpose index-based heterogeneous sequence with a fixed length
 Ctuple_tagTag representing hana::tuples
 CtypeC++ type in value-level representation
 Ctype_tagTag representing hana::type
 CwhenEnable a partial specialization only if a boolean condition is true
 Nmpl
 Cintegral_cAdapter for IntegralConstants from the Boost.MPL
 ClistAdapter for Boost.MPL lists
 CvectorAdapter for Boost.MPL vectors
 CtupleAdapter for boost::tuples
 Nstd
 CarrayAdaptation of std::array for Hana
 Cinteger_sequenceAdaptation of std::integer_sequence for Hana
 Cintegral_constantAdapter for std::integral_constants
 CpairAdaptation of std::pair for Hana
 CratioAdaptation of std::ratio for Hana
 CtupleAdapter for std::tuples