epoc32/include/stdapis/boost/mpl/aux_/overload_names.hpp
author William Roberts <williamr@symbian.org>
Wed, 31 Mar 2010 12:27:01 +0100
branchSymbian2
changeset 3 e1b950c65cb4
permissions -rw-r--r--
Attempt to represent the S^2->S^3 header reorganisation as a series of "hg rename" operations
     1 
     2 #ifndef BOOST_MPL_AUX_OVERLOAD_NAMES_HPP_INCLUDED
     3 #define BOOST_MPL_AUX_OVERLOAD_NAMES_HPP_INCLUDED
     4 
     5 // Copyright Aleksey Gurtovoy 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 // $Source: /cvsroot/boost/boost/boost/mpl/aux_/overload_names.hpp,v $
    14 // $Date: 2004/10/13 18:23:20 $
    15 // $Revision: 1.2 $
    16 
    17 #include <boost/mpl/aux_/ptr_to_ref.hpp>
    18 #include <boost/mpl/aux_/config/operators.hpp>
    19 
    20 #if defined(BOOST_MPL_CFG_USE_OPERATORS_OVERLOADING)
    21 
    22 #   include <boost/mpl/aux_/static_cast.hpp>
    23 
    24 #   define BOOST_MPL_AUX_OVERLOAD_VALUE_BY_KEY  operator/
    25 #   define BOOST_MPL_AUX_OVERLOAD_ITEM_BY_ORDER operator|
    26 #   define BOOST_MPL_AUX_OVERLOAD_ORDER_BY_KEY  operator||
    27 #   define BOOST_MPL_AUX_OVERLOAD_IS_MASKED     operator%
    28 
    29 #   define BOOST_MPL_AUX_OVERLOAD_CALL_VALUE_BY_KEY(T, x)   BOOST_MPL_AUX_PTR_TO_REF(T) / x
    30 #   define BOOST_MPL_AUX_OVERLOAD_CALL_ITEM_BY_ORDER(T, x)  BOOST_MPL_AUX_PTR_TO_REF(T) | x
    31 #   define BOOST_MPL_AUX_OVERLOAD_CALL_ORDER_BY_KEY(T, x)   BOOST_MPL_AUX_PTR_TO_REF(T) || x
    32 #   define BOOST_MPL_AUX_OVERLOAD_CALL_IS_MASKED(T, x)      BOOST_MPL_AUX_PTR_TO_REF(T) % x
    33 
    34 #else
    35 
    36 #   define BOOST_MPL_AUX_OVERLOAD_VALUE_BY_KEY  value_by_key_
    37 #   define BOOST_MPL_AUX_OVERLOAD_ITEM_BY_ORDER item_by_order_
    38 #   define BOOST_MPL_AUX_OVERLOAD_ORDER_BY_KEY  order_by_key_
    39 #   define BOOST_MPL_AUX_OVERLOAD_IS_MASKED     is_masked_
    40 
    41 #   define BOOST_MPL_AUX_OVERLOAD_CALL_VALUE_BY_KEY(T, x)   T::BOOST_MPL_AUX_OVERLOAD_VALUE_BY_KEY( BOOST_MPL_AUX_PTR_TO_REF(T), x )
    42 #   define BOOST_MPL_AUX_OVERLOAD_CALL_ITEM_BY_ORDER(T, x)  T::BOOST_MPL_AUX_OVERLOAD_ITEM_BY_ORDER( BOOST_MPL_AUX_PTR_TO_REF(T), x )
    43 #   define BOOST_MPL_AUX_OVERLOAD_CALL_ORDER_BY_KEY(T, x)   T::BOOST_MPL_AUX_OVERLOAD_ORDER_BY_KEY( BOOST_MPL_AUX_PTR_TO_REF(T), x )
    44 #   define BOOST_MPL_AUX_OVERLOAD_CALL_IS_MASKED(T, x)      T::BOOST_MPL_AUX_OVERLOAD_IS_MASKED( BOOST_MPL_AUX_PTR_TO_REF(T), x )
    45 
    46 #endif
    47 
    48 #endif // BOOST_MPL_AUX_OVERLOAD_NAMES_HPP_INCLUDED