blob: 80bca8e8ab73b9f6e31ee4bc79510cd0d071a4de [file] [log] [blame]
Jeff Thompsona28eed82013-08-22 16:21:10 -07001// (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
Jeff Thompson3d613fd2013-10-15 15:39:04 -07009#ifndef NDNBOOST_TT_HAS_LOGICAL_AND_HPP_INCLUDED
10#define NDNBOOST_TT_HAS_LOGICAL_AND_HPP_INCLUDED
Jeff Thompsona28eed82013-08-22 16:21:10 -070011
Jeff Thompson3d613fd2013-10-15 15:39:04 -070012#define NDNBOOST_TT_TRAIT_NAME has_logical_and
13#define NDNBOOST_TT_TRAIT_OP &&
14#define NDNBOOST_TT_FORBIDDEN_IF\
Jeff Thompsona28eed82013-08-22 16:21:10 -070015 /* pointer with fundamental non convertible to bool */\
16 ::ndnboost::type_traits::ice_or<\
17 ::ndnboost::type_traits::ice_and<\
18 ::ndnboost::is_pointer< Lhs_noref >::value,\
19 ::ndnboost::type_traits::ice_and<\
20 ::ndnboost::is_fundamental< Rhs_nocv >::value,\
21 ::ndnboost::type_traits::ice_not< ::ndnboost::is_convertible< Rhs_nocv, bool >::value >::value\
22 >::value\
23 >::value,\
24 ::ndnboost::type_traits::ice_and<\
25 ::ndnboost::is_pointer< Rhs_noref >::value,\
26 ::ndnboost::type_traits::ice_and<\
27 ::ndnboost::is_fundamental< Lhs_nocv >::value,\
28 ::ndnboost::type_traits::ice_not< ::ndnboost::is_convertible< Lhs_nocv, bool >::value >::value\
29 >::value\
30 >::value\
31 >::value
32
33
34#include <ndnboost/type_traits/detail/has_binary_operator.hpp>
35
Jeff Thompson3d613fd2013-10-15 15:39:04 -070036#undef NDNBOOST_TT_TRAIT_NAME
37#undef NDNBOOST_TT_TRAIT_OP
38#undef NDNBOOST_TT_FORBIDDEN_IF
Jeff Thompsona28eed82013-08-22 16:21:10 -070039
40#endif