epoc32/include/stdapis/boost/mpl/identity.hpp
branchSymbian3
changeset 4 837f303aceeb
parent 3 e1b950c65cb4
equal deleted inserted replaced
3:e1b950c65cb4 4:837f303aceeb
     1 # /* **************************************************************************
     1 
     2 #  *                                                                          *
     2 #ifndef BOOST_MPL_IDENTITY_HPP_INCLUDED
     3 #  *     (C) Copyright Paul Mensonides 2002.
     3 #define BOOST_MPL_IDENTITY_HPP_INCLUDED
     4 #  *     Distributed under the Boost Software License, Version 1.0. (See
     4 
     5 #  *     accompanying file LICENSE_1_0.txt or copy at
     5 // Copyright Aleksey Gurtovoy 2000-2004
     6 #  *     http://www.boost.org/LICENSE_1_0.txt)
     6 //
     7 #  *                                                                          *
     7 // Distributed under the Boost Software License, Version 1.0. 
     8 #  ************************************************************************** */
     8 // (See accompanying file LICENSE_1_0.txt or copy at 
     9 #
     9 // http://www.boost.org/LICENSE_1_0.txt)
    10 # /* See http://www.boost.org for most recent version. */
    10 //
    11 #
    11 // See http://www.boost.org/libs/mpl for documentation.
    12 # ifndef BOOST_PREPROCESSOR_IDENTITY_HPP
    12 
    13 # define BOOST_PREPROCESSOR_IDENTITY_HPP
    13 // $Source: /cvsroot/boost/boost/boost/mpl/identity.hpp,v $
    14 #
    14 // $Date: 2004/09/02 15:40:41 $
    15 # include <boost/preprocessor/facilities/identity.hpp>
    15 // $Revision: 1.4 $
    16 #
    16 
    17 # endif
    17 #include <boost/mpl/aux_/na_spec.hpp>
       
    18 #include <boost/mpl/aux_/lambda_support.hpp>
       
    19 
       
    20 namespace boost { namespace mpl {
       
    21 
       
    22 template<
       
    23       typename BOOST_MPL_AUX_NA_PARAM(T)
       
    24     >
       
    25 struct identity
       
    26 {
       
    27     typedef T type;
       
    28     BOOST_MPL_AUX_LAMBDA_SUPPORT(1, identity, (T))
       
    29 };
       
    30 
       
    31 template<
       
    32       typename BOOST_MPL_AUX_NA_PARAM(T)
       
    33     >
       
    34 struct make_identity
       
    35 {
       
    36     typedef identity<T> type;
       
    37     BOOST_MPL_AUX_LAMBDA_SUPPORT(1, make_identity, (T))
       
    38 };
       
    39 
       
    40 BOOST_MPL_AUX_NA_SPEC_NO_ETI(1, identity)
       
    41 BOOST_MPL_AUX_NA_SPEC_NO_ETI(1, make_identity)
       
    42 
       
    43 }}
       
    44 
       
    45 #endif // BOOST_MPL_IDENTITY_HPP_INCLUDED