The Battle for Wesnoth  1.13.10+dev
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
arg.hpp
Go to the documentation of this file.
1 #ifdef __cplusplus
2 
3 #include <boost/version.hpp>
4 #if (BOOST_VERSION >= 106000) && (BOOST_VERSION <= 106200)
5 
6 #ifndef BOOST_BIND_ARG_HPP_INCLUDED
7 #define BOOST_BIND_ARG_HPP_INCLUDED
8 
9 /*
10 ** See https://svn.boost.org/trac/boost/ticket/12397
11 ** Patch applied https://github.com/boostorg/bind/commit/3c56630b5400c43d1a4393d685a407e68a69ce9e
12 ** GL 2016-10-12
13 */
14 
15 // MS compatible compilers support #pragma once
16 
17 #if defined(_MSC_VER) && (_MSC_VER >= 1020)
18 # pragma once
19 #endif
20 
21 //
22 // bind/arg.hpp
23 //
24 // Copyright (c) 2002 Peter Dimov and Multi Media Ltd.
25 //
26 // Distributed under the Boost Software License, Version 1.0. (See
27 // accompanying file LICENSE_1_0.txt or copy at
28 // http://www.boost.org/LICENSE_1_0.txt)
29 //
30 // See http://www.boost.org/libs/bind/bind.html for documentation.
31 //
32 
33 #include <boost/config.hpp>
34 #include <boost/is_placeholder.hpp>
35 
36 namespace boost
37 {
38 
39 template< int I, int J > struct _arg_eq
40 {
41 };
42 
43 template< int I > struct _arg_eq< I, I>
44 {
45  typedef void type;
46 };
47 
48 template< int I > struct arg
49 {
50  BOOST_CONSTEXPR arg()
51  {
52  }
53 
54  template< class T > BOOST_CONSTEXPR arg( T const & /* t */, typename _arg_eq< I, is_placeholder<T>::value >::type * = 0 )
55  {
56  }
57 };
58 
59 template< int I > BOOST_CONSTEXPR bool operator==( arg<I> const &, arg<I> const & )
60 {
61  return true;
62 }
63 
64 #if !defined( BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION )
65 
66 template< int I > struct is_placeholder< arg<I> >
67 {
68  enum _vt { value = I };
69 };
70 
71 template< int I > struct is_placeholder< arg<I> (*) () >
72 {
73  enum _vt { value = I };
74 };
75 
76 #endif
77 
78 } // namespace boost
79 
80 #endif // #ifndef BOOST_BIND_ARG_HPP_INCLUDED
81 
82 #endif // BOOST_VERSION checks
83 
84 #endif // __cplusplus
bool operator==(const config &a, const config &b)
Definition: config.cpp:1245