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(BOOST_BORLANDC) || defined(__GNUC__) && (__GNUC__ < 4) 33 _1()34inline boost::arg<1> _1() { return boost::arg<1>(); } _2()35inline boost::arg<2> _2() { return boost::arg<2>(); } _3()36inline boost::arg<3> _3() { return boost::arg<3>(); } _4()37inline boost::arg<4> _4() { return boost::arg<4>(); } _5()38inline boost::arg<5> _5() { return boost::arg<5>(); } _6()39inline boost::arg<6> _6() { return boost::arg<6>(); } _7()40inline boost::arg<7> _7() { return boost::arg<7>(); } _8()41inline boost::arg<8> _8() { return boost::arg<8>(); } _9()42inline boost::arg<9> _9() { return boost::arg<9>(); } 43 44 #elif !defined(BOOST_NO_CXX17_INLINE_VARIABLES) 45 46 BOOST_INLINE_CONSTEXPR boost::arg<1> _1; 47 BOOST_INLINE_CONSTEXPR boost::arg<2> _2; 48 BOOST_INLINE_CONSTEXPR boost::arg<3> _3; 49 BOOST_INLINE_CONSTEXPR boost::arg<4> _4; 50 BOOST_INLINE_CONSTEXPR boost::arg<5> _5; 51 BOOST_INLINE_CONSTEXPR boost::arg<6> _6; 52 BOOST_INLINE_CONSTEXPR boost::arg<7> _7; 53 BOOST_INLINE_CONSTEXPR boost::arg<8> _8; 54 BOOST_INLINE_CONSTEXPR boost::arg<9> _9; 55 56 #else 57 58 BOOST_STATIC_CONSTEXPR boost::arg<1> _1; 59 BOOST_STATIC_CONSTEXPR boost::arg<2> _2; 60 BOOST_STATIC_CONSTEXPR boost::arg<3> _3; 61 BOOST_STATIC_CONSTEXPR boost::arg<4> _4; 62 BOOST_STATIC_CONSTEXPR boost::arg<5> _5; 63 BOOST_STATIC_CONSTEXPR boost::arg<6> _6; 64 BOOST_STATIC_CONSTEXPR boost::arg<7> _7; 65 BOOST_STATIC_CONSTEXPR boost::arg<8> _8; 66 BOOST_STATIC_CONSTEXPR boost::arg<9> _9; 67 68 #endif 69 70 } // namespace placeholders 71 72 } // namespace boost 73 74 #endif // #ifndef BOOST_BIND_PLACEHOLDERS_HPP_INCLUDED 75