1 2 // (C) Copyright Edward Diener 2012,2013 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 #if !defined(BOOST_TTI_DETAIL_PLACEHOLDER_HPP) 8 #define BOOST_TTI_DETAIL_PLACEHOLDER_HPP 9 10 #include <boost/mpl/lambda.hpp> 11 #include <boost/mpl/not.hpp> 12 #include <boost/type_traits/is_same.hpp> 13 14 namespace boost 15 { 16 namespace tti 17 { 18 namespace detail 19 { 20 template <class BOOST_TTI_DETAIL_TP_T> 21 struct is_placeholder_expression : 22 boost::mpl::not_ 23 < 24 boost::is_same 25 < 26 typename boost::mpl::lambda<BOOST_TTI_DETAIL_TP_T>::type, 27 BOOST_TTI_DETAIL_TP_T 28 > 29 > 30 { 31 }; 32 } 33 } 34 } 35 36 #endif // BOOST_TTI_DETAIL_PLACEHOLDER_HPP 37