has_minus.hpp
Go to the documentation of this file.
1 // (C) Copyright 2009-2011 Frederic Bron.
2 //
3 // Use, modification and distribution are subject to the Boost Software License,
4 // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
5 // http://www.boost.org/LICENSE_1_0.txt).
6 //
7 // See http://www.boost.org/libs/type_traits for most recent version including documentation.
8 
9 #ifndef BOOST_TT_HAS_MINUS_HPP_INCLUDED
10 #define BOOST_TT_HAS_MINUS_HPP_INCLUDED
11 
12 #define BOOST_TT_TRAIT_NAME has_minus
13 #define BOOST_TT_TRAIT_OP -
14 #define BOOST_TT_FORBIDDEN_IF\
15  (\
16  /* Lhs==pointer and Rhs==fundamental and Rhs!=integral */\
17  (\
18  ::boost::is_pointer< Lhs_noref >::value && \
19  ::boost::is_fundamental< Rhs_nocv >::value && \
20  (! ::boost::is_integral< Rhs_noref >::value )\
21  ) || \
22  /* Lhs==void* and (Rhs==fundamental or Rhs==pointer) */\
23  (\
24  ::boost::is_pointer< Lhs_noref >::value && \
25  ::boost::is_void< Lhs_noptr >::value && \
26  ( \
27  ::boost::is_fundamental< Rhs_nocv >::value || \
28  ::boost::is_pointer< Rhs_noref >::value\
29  )\
30  ) || \
31  /* Rhs==void* and (Lhs==fundamental or Lhs==pointer) */\
32  (\
33  ::boost::is_pointer< Rhs_noref >::value && \
34  ::boost::is_void< Rhs_noptr >::value && \
35  (\
36  ::boost::is_fundamental< Lhs_nocv >::value || \
37  ::boost::is_pointer< Lhs_noref >::value\
38  )\
39  ) ||\
40  /* Lhs=fundamental and Rhs=pointer */\
41  (\
42  ::boost::is_fundamental< Lhs_nocv >::value && \
43  ::boost::is_pointer< Rhs_noref >::value\
44  ) ||\
45  /* two different pointers */\
46  (\
47  ::boost::is_pointer< Lhs_noref >::value && \
48  ::boost::is_pointer< Rhs_noref >::value && \
49  (! ::boost::is_same< Lhs_nocv, Rhs_nocv >::value )\
50  )\
51  )
52 
53 
55 
56 #undef BOOST_TT_TRAIT_NAME
57 #undef BOOST_TT_TRAIT_OP
58 #undef BOOST_TT_FORBIDDEN_IF
59 
60 #endif


librealsense2
Author(s): Sergey Dorodnicov , Doron Hirshberg , Mark Horn , Reagan Lopez , Itay Carpis
autogenerated on Mon May 3 2021 02:47:16