Class Hierarchy
This inheritance list is sorted roughly, but not completely, alphabetically:

boost::hana::detail::operators::adl< tuple< Xn... > > |
boost::hana::tuple< Xn > | General purpose index-based heterogeneous sequence with a fixed length
boost::hana::detail::operators::adl< tuple<> > |
boost::hana::detail::operators::adl<> |
boost::hana::detail::array< bool, sizeof...(B)> |
boost::hana::basic_tuple< F, Args... > |
boost::hana::basic_tuple< X > |
boost::hana::basic_tuple< Xn... > |
boost::fusion::deque< T > | Adapter for Boost.Fusion deques
boost::fusion::list< T > | Adapter for Boost.Fusion lists
boost::fusion::tuple< T > | Adapter for Boost.Fusion tuples
boost::fusion::vector< T > | Adapter for Boost.Fusion vectors
boost::hana::basic_tuple< Xs > | Stripped down version of `hana::tuple`
boost::hana::basic_tuple_tag | Tag representing `hana::basic_tuple`
boost::hana::basic_type< T > | Base class of `hana::type`; used for pattern-matching
boost::hana::common< T, U, enabler > | Metafunction returning the common data type between two data types
boost::hana::constant_detail::which< A, B, C > |
boost::hana::default_ | Mark a tag-dispatched method implementation as a default implementation
boost::hana::detail::any_of< Predicate, T > | Returns whether the `Predicate` is satisfied by any of the `T...`
boost::hana::detail::array< T, Size > | A minimal `std::array` with better `constexpr` support
boost::hana::detail::CanonicalConstant< T > | Tag representing a canonical `Constant`
boost::hana::detail::create< T > | Implementation of the generic `std::make_xxx` pattern for arbitrary `xxx`s
boost::hana::detail::decay< T, U > | Equivalent to `std::decay`, except faster
boost::hana::detail::first_unsatisfied_index< Pred > | Returns the index of the first element which does not satisfy `Pred`, or `sizeof...(Xs)` if no such element exists
boost::hana::detail::has_duplicates< T > | Returns whether any of the `T`s are duplicate w.r.t. `hana::equal`
boost::hana::detail::nested_by< Algorithm > | Provides a `.by` static constexpr function object
boost::hana::detail::nested_than< Algorithm > | Provides a `.than` static constexpr function object
boost::hana::detail::nested_to< Algorithm > | Provides a `.to` static constexpr function object
boost::hana::detail::operators::adl<... > | Enables ADL in the `hana::detail::operators` namespace
boost::hana::detail::std_common_type< T, U, typename > | Equivalent to `std::common_type`, except it is SFINAE-friendly and does not support custom specializations
boost::hana::detail::type_at< n, T > | Classic MPL-style metafunction returning the nth element of a type parameter pack
boost::hana::detail::wrong<... > | Equivalent to a type-dependent `std::false_type`
boost::hana::embedding< bool > | Marks a conversion between data types as being an embedding
boost::hana::experimental::types< T > | Container optimized for holding types
boost::hana::has_common< T, U, typename > | Metafunction returning whether two data types share a common data type
boost::hana::integral_constant< T, v > | Compile-time value of an integral type
boost::hana::integral_constant_tag< T > | Tag representing `hana::integral_constant`
boost::hana::IntegralConstant< C > | The `IntegralConstant` concept represents compile-time integral values
boost::hana::is_convertible< From, To, typename > | Returns whether there is a Hana-conversion from a data type to another
boost::hana::is_default< Method, typename > | Returns whether a tag-dispatched method implementation is a default implementation
boost::hana::is_embedded< From, To, typename > | Returns whether a data type can be embedded into another data type
boost::hana::lazy< implementation_defined > | `hana::lazy` implements superficial laziness via a monadic interface
boost::hana::lazy_tag | Tag representing `hana::lazy`
boost::hana::map< Pairs > | Basic associative container requiring unique, `Comparable` and `Hashable` keys
boost::hana::map_tag | Tag representing `hana::map`s
boost::hana::optional< T > | Optional value whose optional-ness is known at compile-time
boost::hana::optional_tag | Tag representing a `hana::optional`
boost::hana::pair< First, Second > | Generic container for two elements
boost::hana::pair_tag | Tag representing `hana::pair`
boost::hana::range< T, from, to > | Compile-time half-open interval of `hana::integral_constant`s
boost::hana::range_tag | Tag representing a `hana::range`
boost::hana::set< implementation_defined > | Basic unordered container requiring unique, `Comparable` and `Hashable` keys
boost::hana::set_tag | Tag representing the `hana::set` container
boost::hana::string< implementation_defined > | Compile-time string
boost::hana::string_tag | Tag representing a compile-time string
boost::hana::tag_of< T, enabler > | Metafunction returning the tag associated to `T`
boost::hana::tuple_tag | Tag representing `hana::tuple`s
boost::hana::type< T > | C++ type in value-level representation
boost::hana::type_tag | Tag representing `hana::type`
boost::hana::when< condition > | Enable a partial specialization only if a boolean condition is true
boost::mpl::integral_c< T, v > | Adapter for IntegralConstants from the Boost.MPL
boost::mpl::list< T > | Adapter for Boost.MPL lists
boost::mpl::vector< T > | Adapter for Boost.MPL vectors
boost::tuple< T > | Adapter for `boost::tuple`s
boost::hana::embedding< is_embedded< C::value_type, T >::value > |
boost::hana::embedding< is_embedded< From::value_type, To >::value > |
boost::hana::embedding< Sequence< F >::value > |
boost::hana::embedding<> |
boost::hana::integral_constant< bool, false > |
boost::hana::integral_constant< bool, hana::IntegralConstant< Tag >::value > |
boost::hana::integral_constant< bool, hana::Sequence< Tag >::value > |
boost::hana::integral_constant< bool, Metafunction< Tag >::value > |
boost::hana::integral_constant< bool, Metafunction< typename tag_of< F >::type >::value > |
boost::hana::integral_constant< bool, std::is_same< DataType, hana::tag_of< T >::type >::value > |
boost::hana::integral_constant< bool,!is_default< accessors_impl< tag_of< S >::type > >::value > |
boost::hana::integral_constant< bool,!is_default< any_of_impl< tag_of< S >::type > >::value &&!is_default< find_if_impl< tag_of< S >::type > >::value > |
boost::hana::integral_constant< bool,!is_default< ap_impl< tag_of< A >::type > >::value &&!is_default< lift_impl< tag_of< A >::type > >::value > |
boost::hana::integral_constant< bool,!is_default< at_impl< tag_of< It >::type > >::value &&!is_default< drop_front_impl< tag_of< It >::type > >::value &&!is_default< is_empty_impl< tag_of< It >::type > >::value > |
boost::hana::integral_constant< bool,!is_default< concat_impl< tag_of< M >::type > >::value &&!is_default< empty_impl< tag_of< M >::type > >::value > |
boost::hana::integral_constant< bool,!is_default< equal_impl< tag_of< T >::type, tag_of< T >::type > >::value > |
boost::hana::integral_constant< bool,!is_default< eval_if_impl< tag_of< L >::type > >::value &&!is_default< not_impl< tag_of< L >::type > >::value &&!is_default< while_impl< tag_of< L >::type > >::value > |
boost::hana::integral_constant< bool,!is_default< extract_impl< tag_of< W >::type > >::value &&(!is_default< duplicate_impl< tag_of< W >::type > >::value||!is_default< extend_impl< tag_of< W >::type > >::value) > |
boost::hana::integral_constant< bool,!is_default< first_impl< tag_of< P >::type > >::value &&!is_default< second_impl< tag_of< P >::type > >::value > |
boost::hana::integral_constant< bool,!is_default< flatten_impl< tag_of< M >::type > >::value||!is_default< chain_impl< tag_of< M >::type > >::value > |
boost::hana::integral_constant< bool,!is_default< fold_left_impl< tag_of< T >::type > >::value||!is_default< unpack_impl< tag_of< T >::type > >::value > |
boost::hana::integral_constant< bool,!is_default< hash_impl< tag_of< T >::type > >::value > |
boost::hana::integral_constant< bool,!is_default< less_impl< tag_of< Ord >::type, tag_of< Ord >::type > >::value > |
boost::hana::integral_constant< bool,!is_default< mod_impl< tag_of< R >::type, tag_of< R >::type > >::value &&!is_default< div_impl< tag_of< R >::type, tag_of< R >::type > >::value > |
boost::hana::integral_constant< bool,!is_default< negate_impl< tag_of< G >::type > >::value||!is_default< minus_impl< tag_of< G >::type, tag_of< G >::type > >::value > |
boost::hana::integral_constant< bool,!is_default< one_impl< tag_of< R >::type > >::value &&!is_default< mult_impl< tag_of< R >::type, tag_of< R >::type > >::value > |
boost::hana::integral_constant< bool,!is_default< transform_impl< tag_of< F >::type > >::value||!is_default< adjust_if_impl< tag_of< F >::type > >::value > |
boost::hana::integral_constant< bool,!is_default< value_impl< tag_of< C >::type > >::value > |
boost::hana::integral_constant< bool,!is_default< zero_impl< tag_of< M >::type > >::value &&!is_default< plus_impl< tag_of< M >::type, tag_of< M >::type > >::value > |
std::array< T, N > | Adaptation of `std::array` for Hana
std::integer_sequence< T, v > | Adaptation of `std::integer_sequence` for Hana
std::integral_constant< T, v > | Adapter for `std::integral_constant`s
std::pair< First, Second > | Adaptation of `std::pair` for Hana
std::ratio< Num, Denom > | Adaptation of `std::ratio` for Hana
std::tuple< T > | Adapter for `std::tuple`s
boost::hana::detail::std_common_type< T, U > |
boost::hana::tag_of< T > |