Home | History | Annotate | Download | only in mpl
      1 
      2 #ifndef BOOST_MPL_ALWAYS_HPP_INCLUDED
      3 #define BOOST_MPL_ALWAYS_HPP_INCLUDED
      4 
      5 // Copyright Aleksey Gurtovoy 2001-2004
      6 //
      7 // Distributed under the Boost Software License, Version 1.0.
      8 // (See accompanying file LICENSE_1_0.txt or copy at
      9 // http://www.boost.org/LICENSE_1_0.txt)
     10 //
     11 // See http://www.boost.org/libs/mpl for documentation.
     12 
     13 // $Id: always.hpp 49267 2008-10-11 06:19:02Z agurtovoy $
     14 // $Date: 2008-10-10 23:19:02 -0700 (Fri, 10 Oct 2008) $
     15 // $Revision: 49267 $
     16 
     17 #include <boost/mpl/aux_/preprocessor/def_params_tail.hpp>
     18 #include <boost/mpl/aux_/na.hpp>
     19 #include <boost/mpl/aux_/arity_spec.hpp>
     20 
     21 namespace boost { namespace mpl {
     22 
     23 template< typename Value > struct always
     24 {
     25     template<
     26           typename T
     27         BOOST_MPL_PP_NESTED_DEF_PARAMS_TAIL(1, typename T, na)
     28         >
     29     struct apply
     30     {
     31         typedef Value type;
     32     };
     33 };
     34 
     35 BOOST_MPL_AUX_ARITY_SPEC(1, always)
     36 
     37 }}
     38 
     39 #endif // BOOST_MPL_ALWAYS_HPP_INCLUDED
     40