Apply patch for [CVE-2012-2677][boost] ordered_malloc() overflow
[external/boost.git] / boost / circular_buffer_fwd.hpp
1 // Forward declaration of the circular buffer and its adaptor.
2
3 // Copyright (c) 2003-2008 Jan Gaspar
4
5 // Use, modification, and distribution is subject to the Boost Software
6 // License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
7 // http://www.boost.org/LICENSE_1_0.txt)
8
9 //  See www.boost.org/libs/circular_buffer for documentation.
10
11 #if !defined(BOOST_CIRCULAR_BUFFER_FWD_HPP)
12 #define BOOST_CIRCULAR_BUFFER_FWD_HPP
13
14 #if defined(_MSC_VER) && _MSC_VER >= 1200
15     #pragma once
16 #endif
17
18 #include <boost/config.hpp>
19 #if !defined(BOOST_NO_STD_ALLOCATOR)
20     #include <memory>
21 #else
22     #include <vector>
23 #endif
24
25 namespace boost {
26
27 #if !defined(BOOST_NO_STD_ALLOCATOR)
28     #define BOOST_CB_DEFAULT_ALLOCATOR(T) std::allocator<T>
29 #else
30     #define BOOST_CB_DEFAULT_ALLOCATOR(T) BOOST_DEDUCED_TYPENAME std::vector<T>::allocator_type
31 #endif
32
33 template <class T, class Alloc = BOOST_CB_DEFAULT_ALLOCATOR(T)>
34 class circular_buffer;
35
36 template <class T, class Alloc = BOOST_CB_DEFAULT_ALLOCATOR(T)>
37 class circular_buffer_space_optimized;
38
39 #undef BOOST_CB_DEFAULT_ALLOCATOR
40
41 } // namespace boost
42
43 #endif // #if !defined(BOOST_CIRCULAR_BUFFER_FWD_HPP)