]> git.lyx.org Git - lyx.git/blob - 3rdparty/boost/boost/container/detail/std_fwd.hpp
move boost to 3rdparty directory
[lyx.git] / 3rdparty / boost / boost / container / detail / std_fwd.hpp
1 //////////////////////////////////////////////////////////////////////////////
2 //
3 // (C) Copyright Ion Gaztanaga 2014-2014. Distributed under the Boost
4 // Software License, Version 1.0. (See accompanying file
5 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
6 //
7 // See http://www.boost.org/libs/container for documentation.
8 //
9 //////////////////////////////////////////////////////////////////////////////
10
11 #ifndef BOOST_CONTAINER_DETAIL_STD_FWD_HPP
12 #define BOOST_CONTAINER_DETAIL_STD_FWD_HPP
13
14 #ifndef BOOST_CONFIG_HPP
15 #  include <boost/config.hpp>
16 #endif
17
18 #if defined(BOOST_HAS_PRAGMA_ONCE)
19 #  pragma once
20 #endif
21
22 //////////////////////////////////////////////////////////////////////////////
23 //                        Standard predeclarations
24 //////////////////////////////////////////////////////////////////////////////
25
26 #if defined(_LIBCPP_VERSION)
27    #define BOOST_CONTAINER_CLANG_INLINE_STD_NS
28    #pragma GCC diagnostic push
29    #if defined(__clang__)
30       #pragma GCC diagnostic ignored "-Wc++11-extensions"
31    #endif
32    #define BOOST_CONTAINER_STD_NS_BEG _LIBCPP_BEGIN_NAMESPACE_STD
33    #define BOOST_CONTAINER_STD_NS_END _LIBCPP_END_NAMESPACE_STD
34 #elif defined(BOOST_GNU_STDLIB) && defined(_GLIBCXX_BEGIN_NAMESPACE_VERSION)  //GCC >= 4.6
35    #define BOOST_CONTAINER_STD_NS_BEG namespace std _GLIBCXX_VISIBILITY(default) { _GLIBCXX_BEGIN_NAMESPACE_VERSION
36    #define BOOST_CONTAINER_STD_NS_END _GLIBCXX_END_NAMESPACE_VERSION  } // namespace
37 #elif defined(BOOST_GNU_STDLIB) && defined(_GLIBCXX_BEGIN_NAMESPACE)  //GCC >= 4.2
38    #define BOOST_CONTAINER_STD_NS_BEG _GLIBCXX_BEGIN_NAMESPACE(std)
39    #define BOOST_CONTAINER_STD_NS_END _GLIBCXX_END_NAMESPACE
40 #else
41    #define BOOST_CONTAINER_STD_NS_BEG namespace std{
42    #define BOOST_CONTAINER_STD_NS_END }
43 #endif
44
45 BOOST_CONTAINER_STD_NS_BEG
46
47 template<class T>
48 class allocator;
49
50 template<class T>
51 struct less;
52
53 template<class T1, class T2>
54 struct pair;
55
56 template<class T>
57 struct char_traits;
58
59 struct input_iterator_tag;
60 struct forward_iterator_tag;
61 struct bidirectional_iterator_tag;
62 struct random_access_iterator_tag;
63
64 template<class Container>
65 class insert_iterator;
66
67 struct allocator_arg_t;
68
69 BOOST_CONTAINER_STD_NS_END
70
71 #ifdef BOOST_CONTAINER_CLANG_INLINE_STD_NS
72    #pragma GCC diagnostic pop
73    #undef BOOST_CONTAINER_CLANG_INLINE_STD_NS
74 #endif   //BOOST_CONTAINER_CLANG_INLINE_STD_NS
75
76 #endif //#ifndef BOOST_CONTAINER_DETAIL_STD_FWD_HPP