/Src/Dependencies/Boost/boost/interprocess/containers/container/container_fwd.hpp
http://hadesmem.googlecode.com/ · C++ Header · 187 lines · 96 code · 45 blank · 46 comment · 1 complexity · dbc6b47f07004c1cb181177d3a503d6c MD5 · raw file
- //////////////////////////////////////////////////////////////////////////////
- //
- // (C) Copyright Ion Gaztanaga 2005-2009. Distributed under the Boost
- // Software License, Version 1.0. (See accompanying file
- // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- //
- // See http://www.boost.org/libs/container for documentation.
- //
- //////////////////////////////////////////////////////////////////////////////
- #ifndef BOOST_CONTAINERS_CONTAINERS_FWD_HPP
- #define BOOST_CONTAINERS_CONTAINERS_FWD_HPP
- #if (defined _MSC_VER) && (_MSC_VER >= 1200)
- # pragma once
- #endif
- //////////////////////////////////////////////////////////////////////////////
- // Standard predeclarations
- //////////////////////////////////////////////////////////////////////////////
- /// @cond
- namespace boost{
- namespace intrusive{
- //Create namespace to avoid compilation errors
- }}
- namespace boost{ namespace container{ namespace containers_detail{
- namespace bi = boost::intrusive;
- }}}
- namespace std {
- template <class T>
- class allocator;
- template <class T>
- struct less;
- template <class T1, class T2>
- struct pair;
- template <class CharType>
- struct char_traits;
- } //namespace std {
- /// @endcond
- //////////////////////////////////////////////////////////////////////////////
- // Containers
- //////////////////////////////////////////////////////////////////////////////
- namespace boost {
- namespace container {
- //vector class
- template <class T
- ,class A = std::allocator<T> >
- class vector;
- //vector class
- template <class T
- ,class A = std::allocator<T> >
- class stable_vector;
- //vector class
- template <class T
- ,class A = std::allocator<T> >
- class deque;
- //list class
- template <class T
- ,class A = std::allocator<T> >
- class list;
- //slist class
- template <class T
- ,class Alloc = std::allocator<T> >
- class slist;
- //set class
- template <class T
- ,class Pred = std::less<T>
- ,class Alloc = std::allocator<T> >
- class set;
- //multiset class
- template <class T
- ,class Pred = std::less<T>
- ,class Alloc = std::allocator<T> >
- class multiset;
- //map class
- template <class Key
- ,class T
- ,class Pred = std::less<Key>
- ,class Alloc = std::allocator<std::pair<const Key, T> > >
- class map;
- //multimap class
- template <class Key
- ,class T
- ,class Pred = std::less<Key>
- ,class Alloc = std::allocator<std::pair<const Key, T> > >
- class multimap;
- //flat_set class
- template <class T
- ,class Pred = std::less<T>
- ,class Alloc = std::allocator<T> >
- class flat_set;
- //flat_multiset class
- template <class T
- ,class Pred = std::less<T>
- ,class Alloc = std::allocator<T> >
- class flat_multiset;
- //flat_map class
- template <class Key
- ,class T
- ,class Pred = std::less<Key>
- ,class Alloc = std::allocator<std::pair<Key, T> > >
- class flat_map;
- //flat_multimap class
- template <class Key
- ,class T
- ,class Pred = std::less<Key>
- ,class Alloc = std::allocator<std::pair<Key, T> > >
- class flat_multimap;
- //basic_string class
- template <class CharT
- ,class Traits = std::char_traits<CharT>
- ,class Alloc = std::allocator<CharT> >
- class basic_string;
- //! Type used to tag that the input range is
- //! guaranteed to be ordered
- struct ordered_range_impl_t {};
- //! Type used to tag that the input range is
- //! guaranteed to be ordered and unique
- struct ordered_unique_range_impl_t{};
- /// @cond
- typedef ordered_range_impl_t * ordered_range_t;
- typedef ordered_unique_range_impl_t *ordered_unique_range_t;
- /// @endcond
- //! Value used to tag that the input range is
- //! guaranteed to be ordered
- static const ordered_range_t ordered_range = 0;
- //! Value used to tag that the input range is
- //! guaranteed to be ordered and unique
- static const ordered_unique_range_t ordered_unique_range = 0;
- /// @cond
- namespace detail_really_deep_namespace {
- //Otherwise, gcc issues a warning of previously defined
- //anonymous_instance and unique_instance
- struct dummy
- {
- dummy()
- {
- (void)ordered_range;
- (void)ordered_unique_range;
- }
- };
- } //detail_really_deep_namespace {
- /// @endcond
- }} //namespace boost { namespace container {
- #endif //#ifndef BOOST_CONTAINERS_CONTAINERS_FWD_HPP