]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/boost/hana/ext/boost/fusion/tuple.hpp
update sources to v12.2.3
[ceph.git] / ceph / src / boost / boost / hana / ext / boost / fusion / tuple.hpp
1 /*!
2 @file
3 Adapts `boost::fusion::tuple` for use with Hana.
4
5 In the current version of Boost.Fusion, `boost::fusion::tuple` is basically
6 an alias to `boost::fusion::vector`, so both data types share the same
7 implementation in Hana.
8
9 @copyright Louis Dionne 2013-2017
10 Distributed under the Boost Software License, Version 1.0.
11 (See accompanying file LICENSE.md or copy at http://boost.org/LICENSE_1_0.txt)
12 */
13
14 #ifndef BOOST_HANA_EXT_BOOST_FUSION_TUPLE_HPP
15 #define BOOST_HANA_EXT_BOOST_FUSION_TUPLE_HPP
16
17 #include <boost/hana/config.hpp>
18 #include <boost/hana/ext/boost/fusion/vector.hpp>
19
20
21 #ifdef BOOST_HANA_DOXYGEN_INVOKED
22 namespace boost { namespace fusion {
23 //! @ingroup group-ext-fusion
24 //! Adapter for Boost.Fusion tuples.
25 //!
26 //!
27 //! Modeled concepts
28 //! ----------------
29 //! A Fusion tuple is a model of the `Sequence` concept, and all the
30 //! concepts it refines. That makes it essentially the same as a Hana
31 //! tuple, although the complexity of some operations might differ from
32 //! that of a tuple.
33 //!
34 //! @include example/ext/boost/fusion/tuple.cpp
35 template <typename ...T>
36 struct tuple { };
37 }}
38 #endif
39
40
41 BOOST_HANA_NAMESPACE_BEGIN
42 namespace ext { namespace boost { namespace fusion {
43 // In the current version of Boost.Fusion, `boost::fusion::tuple` is
44 // basically an alias to `boost::fusion::vector`, hence the alias.
45 using tuple_tag = vector_tag;
46 }}}
47 BOOST_HANA_NAMESPACE_END
48
49 #endif // !BOOST_HANA_EXT_BOOST_FUSION_TUPLE_HPP