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
williamr@2
     1
williamr@2
     2
#ifndef BOOST_MPL_AUX_OVERLOAD_NAMES_HPP_INCLUDED
williamr@2
     3
#define BOOST_MPL_AUX_OVERLOAD_NAMES_HPP_INCLUDED
williamr@2
     4
williamr@2
     5
// Copyright Aleksey Gurtovoy 2004
williamr@2
     6
//
williamr@2
     7
// Distributed under the Boost Software License, Version 1.0. 
williamr@2
     8
// (See accompanying file LICENSE_1_0.txt or copy at 
williamr@2
     9
// http://www.boost.org/LICENSE_1_0.txt)
williamr@2
    10
//
williamr@2
    11
// See http://www.boost.org/libs/mpl for documentation.
williamr@2
    12
williamr@2
    13
// $Source: /cvsroot/boost/boost/boost/mpl/aux_/overload_names.hpp,v $
williamr@2
    14
// $Date: 2004/10/13 18:23:20 $
williamr@2
    15
// $Revision: 1.2 $
williamr@2
    16
williamr@2
    17
#include <boost/mpl/aux_/ptr_to_ref.hpp>
williamr@2
    18
#include <boost/mpl/aux_/config/operators.hpp>
williamr@2
    19
williamr@2
    20
#if defined(BOOST_MPL_CFG_USE_OPERATORS_OVERLOADING)
williamr@2
    21
williamr@2
    22
#   include <boost/mpl/aux_/static_cast.hpp>
williamr@2
    23
williamr@2
    24
#   define BOOST_MPL_AUX_OVERLOAD_VALUE_BY_KEY  operator/
williamr@2
    25
#   define BOOST_MPL_AUX_OVERLOAD_ITEM_BY_ORDER operator|
williamr@2
    26
#   define BOOST_MPL_AUX_OVERLOAD_ORDER_BY_KEY  operator||
williamr@2
    27
#   define BOOST_MPL_AUX_OVERLOAD_IS_MASKED     operator%
williamr@2
    28
williamr@2
    29
#   define BOOST_MPL_AUX_OVERLOAD_CALL_VALUE_BY_KEY(T, x)   BOOST_MPL_AUX_PTR_TO_REF(T) / x
williamr@2
    30
#   define BOOST_MPL_AUX_OVERLOAD_CALL_ITEM_BY_ORDER(T, x)  BOOST_MPL_AUX_PTR_TO_REF(T) | x
williamr@2
    31
#   define BOOST_MPL_AUX_OVERLOAD_CALL_ORDER_BY_KEY(T, x)   BOOST_MPL_AUX_PTR_TO_REF(T) || x
williamr@2
    32
#   define BOOST_MPL_AUX_OVERLOAD_CALL_IS_MASKED(T, x)      BOOST_MPL_AUX_PTR_TO_REF(T) % x
williamr@2
    33
williamr@2
    34
#else
williamr@2
    35
williamr@2
    36
#   define BOOST_MPL_AUX_OVERLOAD_VALUE_BY_KEY  value_by_key_
williamr@2
    37
#   define BOOST_MPL_AUX_OVERLOAD_ITEM_BY_ORDER item_by_order_
williamr@2
    38
#   define BOOST_MPL_AUX_OVERLOAD_ORDER_BY_KEY  order_by_key_
williamr@2
    39
#   define BOOST_MPL_AUX_OVERLOAD_IS_MASKED     is_masked_
williamr@2
    40
williamr@2
    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 )
williamr@2
    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 )
williamr@2
    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 )
williamr@2
    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 )
williamr@2
    45
williamr@2
    46
#endif
williamr@2
    47
williamr@2
    48
#endif // BOOST_MPL_AUX_OVERLOAD_NAMES_HPP_INCLUDED