epoc32/include/stdapis/boost/functional/detail/container_fwd.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 //  Copyright Daniel James 2005-2006. Use, modification, and distribution are
     3 //  subject to the Boost Software License, Version 1.0. (See accompanying
     4 //  file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
     5 
     6 #if !defined(BOOST_DETAIL_CONTAINER_FWD_HPP)
     7 #define BOOST_DETAIL_CONTAINER_FWD_HPP
     8 
     9 #include <boost/config.hpp>
    10 #include <boost/detail/workaround.hpp>
    11 
    12 #if BOOST_WORKAROUND(__GNUC__, < 3) && !defined(__SGI_STL_PORT) && !defined(_STLPORT_VERSION)
    13 #define BOOST_HASH_CHAR_TRAITS string_char_traits
    14 #else
    15 #define BOOST_HASH_CHAR_TRAITS char_traits
    16 #endif
    17 
    18 #if (defined(__GLIBCXX__) && defined(_GLIBCXX_DEBUG)) \
    19     || BOOST_WORKAROUND(__BORLANDC__, > 0x551) \
    20     || BOOST_WORKAROUND(__DMC__, BOOST_TESTED_AT(0x842)) \
    21     || (defined(__SGI_STL_PORT) || defined(_STLPORT_VERSION))
    22 
    23 #include <deque>
    24 #include <list>
    25 #include <vector>
    26 #include <map>
    27 #include <set>
    28 #include <bitset>
    29 #include <string>
    30 #include <complex>
    31 
    32 #else
    33 
    34 #include <cstddef>
    35 
    36 #if !defined(__SGI_STL_PORT) && !defined(_STLPORT_VERSION) && \
    37         defined(__STL_CONFIG_H)
    38 
    39 #define BOOST_CONTAINER_FWD_BAD_BITSET
    40 
    41 #if !defined(__STL_NON_TYPE_TMPL_PARAM_BUG)
    42 #define BOOST_CONTAINER_FWD_BAD_DEQUE
    43 #endif
    44 
    45 #endif
    46 
    47 #if defined(BOOST_CONTAINER_FWD_BAD_DEQUE)
    48 #include <deque>
    49 #endif
    50 
    51 #if defined(BOOST_CONTAINER_FWD_BAD_BITSET)
    52 #include <bitset>
    53 #endif
    54 
    55 #if defined(BOOST_MSVC)
    56 #pragma warning(push)
    57 #pragma warning(disable:4099) // struct/class mismatch in fwd declarations
    58 #endif
    59 
    60 namespace std
    61 {
    62     template <class T> class allocator;
    63     template <class charT, class traits, class Allocator> class basic_string;
    64     template <class charT> struct BOOST_HASH_CHAR_TRAITS;
    65     template <class T> class complex;
    66 }
    67 
    68 // gcc 3.4 and greater
    69 namespace std
    70 {
    71 #if !defined(BOOST_CONTAINER_FWD_BAD_DEQUE)
    72     template <class T, class Allocator> class deque;
    73 #endif
    74 
    75     template <class T, class Allocator> class list;
    76     template <class T, class Allocator> class vector;
    77     template <class Key, class T, class Compare, class Allocator> class map;
    78     template <class Key, class T, class Compare, class Allocator>
    79     class multimap;
    80     template <class Key, class Compare, class Allocator> class set;
    81     template <class Key, class Compare, class Allocator> class multiset;
    82 
    83 #if !defined(BOOST_CONTAINER_FWD_BAD_BITSET)
    84     template <size_t N> class bitset;
    85 #endif
    86     template <class T1, class T2> struct pair;
    87 }
    88 
    89 #if defined(BOOST_MSVC)
    90 #pragma warning(pop)
    91 #endif
    92 
    93 #endif
    94 
    95 #endif