1 #ifndef BOOST_BIND_PLACEHOLDERS_HPP_INCLUDED
2 #define BOOST_BIND_PLACEHOLDERS_HPP_INCLUDED
3 
4 // MS compatible compilers support #pragma once
5 
6 #if defined(_MSC_VER) && (_MSC_VER >= 1020)
7 # pragma once
8 #endif
9 
10 //
11 //  bind/placeholders.hpp - _N definitions
12 //
13 //  Copyright (c) 2002 Peter Dimov and Multi Media Ltd.
14 //  Copyright 2015 Peter Dimov
15 //
16 //  Distributed under the Boost Software License, Version 1.0.
17 //  See accompanying file LICENSE_1_0.txt or copy at
18 //  http://www.boost.org/LICENSE_1_0.txt
19 //
20 //  See http://www.boost.org/libs/bind/bind.html for documentation.
21 //
22 
23 #include <boost/bind/arg.hpp>
24 #include <boost/config.hpp>
25 
26 namespace boost
27 {
28 
29 namespace placeholders
30 {
31 
32 #if defined(__BORLANDC__) || defined(__GNUC__) && (__GNUC__ < 4)
33 
_1()34 inline boost::arg<1> _1() { return boost::arg<1>(); }
_2()35 inline boost::arg<2> _2() { return boost::arg<2>(); }
_3()36 inline boost::arg<3> _3() { return boost::arg<3>(); }
_4()37 inline boost::arg<4> _4() { return boost::arg<4>(); }
_5()38 inline boost::arg<5> _5() { return boost::arg<5>(); }
_6()39 inline boost::arg<6> _6() { return boost::arg<6>(); }
_7()40 inline boost::arg<7> _7() { return boost::arg<7>(); }
_8()41 inline boost::arg<8> _8() { return boost::arg<8>(); }
_9()42 inline boost::arg<9> _9() { return boost::arg<9>(); }
43 
44 #else
45 
46 BOOST_STATIC_CONSTEXPR boost::arg<1> _1;
47 BOOST_STATIC_CONSTEXPR boost::arg<2> _2;
48 BOOST_STATIC_CONSTEXPR boost::arg<3> _3;
49 BOOST_STATIC_CONSTEXPR boost::arg<4> _4;
50 BOOST_STATIC_CONSTEXPR boost::arg<5> _5;
51 BOOST_STATIC_CONSTEXPR boost::arg<6> _6;
52 BOOST_STATIC_CONSTEXPR boost::arg<7> _7;
53 BOOST_STATIC_CONSTEXPR boost::arg<8> _8;
54 BOOST_STATIC_CONSTEXPR boost::arg<9> _9;
55 
56 #endif
57 
58 } // namespace placeholders
59 
60 } // namespace boost
61 
62 #endif // #ifndef BOOST_BIND_PLACEHOLDERS_HPP_INCLUDED
63