]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/boost/parameter/aux_/tag.hpp
update sources to v12.2.3
[ceph.git] / ceph / src / boost / boost / parameter / aux_ / tag.hpp
1 // Copyright David Abrahams 2005. Distributed under the Boost
2 // Software License, Version 1.0. (See accompanying
3 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
4 #ifndef BOOST_PARAMETER_AUX_TAG_DWA2005610_HPP
5 # define BOOST_PARAMETER_AUX_TAG_DWA2005610_HPP
6
7 # include <boost/parameter/aux_/unwrap_cv_reference.hpp>
8 # include <boost/parameter/aux_/tagged_argument.hpp>
9
10 namespace boost { namespace parameter { namespace aux {
11
12 template <class Keyword, class ActualArg
13 #if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564))
14 , class = typename is_cv_reference_wrapper<ActualArg>::type
15 #endif
16 >
17 struct tag
18 {
19 typedef tagged_argument<
20 Keyword
21 , typename unwrap_cv_reference<ActualArg>::type
22 > type;
23 };
24
25 #if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564))
26 template <class Keyword, class ActualArg>
27 struct tag<Keyword,ActualArg,mpl::false_>
28 {
29 typedef tagged_argument<
30 Keyword
31 , ActualArg
32 > type;
33 };
34 #endif
35
36 }}} // namespace boost::parameter::aux_
37
38 #endif // BOOST_PARAMETER_AUX_TAG_DWA2005610_HPP