mirror of
https://github.com/boostorg/circular_buffer.git
synced 2026-02-03 09:02:12 +00:00
Compare commits
11 Commits
boost-1.74
...
boost-1.89
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a08a5b55ee | ||
|
|
05a83223e4 | ||
|
|
6c5ebd98a0 | ||
|
|
d99ba9ae43 | ||
|
|
d4fbf446b9 | ||
|
|
9579999506 | ||
|
|
adf0d87681 | ||
|
|
2b15dc6044 | ||
|
|
59640fa9dc | ||
|
|
50d29f7e70 | ||
|
|
e77766b4a6 |
@@ -4,9 +4,9 @@
|
||||
# Distributed under the Boost Software License, Version 1.0.
|
||||
# (http://www.boost.org/LICENSE_1_0.txt)
|
||||
|
||||
cmake_minimum_required(VERSION 3.5)
|
||||
cmake_minimum_required(VERSION 3.5...3.20)
|
||||
|
||||
project(BoostCircularBuffer LANGUAGES CXX)
|
||||
project(boost_circular_buffer VERSION "${BOOST_SUPERPROJECT_VERSION}" LANGUAGES CXX)
|
||||
|
||||
add_library(boost_circular_buffer INTERFACE)
|
||||
|
||||
@@ -22,4 +22,5 @@ target_link_libraries(boost_circular_buffer INTERFACE
|
||||
Boost::move
|
||||
Boost::static_assert
|
||||
Boost::throw_exception
|
||||
Boost::type_traits)
|
||||
Boost::type_traits
|
||||
)
|
||||
|
||||
@@ -233,7 +233,7 @@ void fifo_test(Buffer* buffer) {
|
||||
|
||||
// Initialize the buffer with some values before launching producer and consumer threads.
|
||||
for (unsigned long i = QUEUE_SIZE / 2L; i > 0; --i) {
|
||||
#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x581))
|
||||
#if BOOST_WORKAROUND(BOOST_BORLANDC, BOOST_TESTED_AT(0x581))
|
||||
buffer->push_front(Buffer::value_type());
|
||||
#else
|
||||
buffer->push_front(BOOST_DEDUCED_TYPENAME Buffer::value_type());
|
||||
|
||||
@@ -136,7 +136,7 @@ void fifo_test(Buffer* buffer)
|
||||
// Initialize the buffer with some values before launching producer and consumer threads.
|
||||
for (unsigned long i = queue_size / 2L; i > 0; --i)
|
||||
{
|
||||
#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x581))
|
||||
#if BOOST_WORKAROUND(BOOST_BORLANDC, BOOST_TESTED_AT(0x581))
|
||||
buffer->push_front(Buffer::value_type());
|
||||
#else
|
||||
buffer->push_front(BOOST_DEDUCED_TYPENAME Buffer::value_type());
|
||||
|
||||
@@ -37,7 +37,7 @@ Includes <boost/circular_buffer/base.hpp>
|
||||
#endif
|
||||
|
||||
/*! INTERNAL ONLY */
|
||||
#if BOOST_WORKAROUND(__BORLANDC__, <= 0x0550) || BOOST_WORKAROUND(__MWERKS__, <= 0x2407)
|
||||
#if BOOST_WORKAROUND(BOOST_BORLANDC, <= 0x0550) || BOOST_WORKAROUND(__MWERKS__, <= 0x2407)
|
||||
#define BOOST_CB_IS_CONVERTIBLE(Iterator, Type) ((void)0)
|
||||
#else
|
||||
#include <iterator>
|
||||
|
||||
@@ -2519,7 +2519,7 @@ private:
|
||||
template <class Iterator>
|
||||
void initialize(Iterator first, Iterator last, const false_type&) {
|
||||
BOOST_CB_IS_CONVERTIBLE(Iterator, value_type); // check for invalid iterator type
|
||||
#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x581))
|
||||
#if BOOST_WORKAROUND(BOOST_BORLANDC, BOOST_TESTED_AT(0x581))
|
||||
initialize(first, last, std::iterator_traits<Iterator>::iterator_category());
|
||||
#else
|
||||
initialize(first, last, BOOST_DEDUCED_TYPENAME std::iterator_traits<Iterator>::iterator_category());
|
||||
@@ -2558,7 +2558,7 @@ private:
|
||||
template <class Iterator>
|
||||
void initialize(capacity_type buffer_capacity, Iterator first, Iterator last, const false_type&) {
|
||||
BOOST_CB_IS_CONVERTIBLE(Iterator, value_type); // check for invalid iterator type
|
||||
#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x581))
|
||||
#if BOOST_WORKAROUND(BOOST_BORLANDC, BOOST_TESTED_AT(0x581))
|
||||
initialize(buffer_capacity, first, last, std::iterator_traits<Iterator>::iterator_category());
|
||||
#else
|
||||
initialize(buffer_capacity, first, last, BOOST_DEDUCED_TYPENAME std::iterator_traits<Iterator>::iterator_category());
|
||||
@@ -2652,7 +2652,7 @@ private:
|
||||
template <class Iterator>
|
||||
void assign(Iterator first, Iterator last, const false_type&) {
|
||||
BOOST_CB_IS_CONVERTIBLE(Iterator, value_type); // check for invalid iterator type
|
||||
#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x581))
|
||||
#if BOOST_WORKAROUND(BOOST_BORLANDC, BOOST_TESTED_AT(0x581))
|
||||
assign(first, last, std::iterator_traits<Iterator>::iterator_category());
|
||||
#else
|
||||
assign(first, last, BOOST_DEDUCED_TYPENAME std::iterator_traits<Iterator>::iterator_category());
|
||||
@@ -2689,7 +2689,7 @@ private:
|
||||
template <class Iterator>
|
||||
void assign(capacity_type new_capacity, Iterator first, Iterator last, const false_type&) {
|
||||
BOOST_CB_IS_CONVERTIBLE(Iterator, value_type); // check for invalid iterator type
|
||||
#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x581))
|
||||
#if BOOST_WORKAROUND(BOOST_BORLANDC, BOOST_TESTED_AT(0x581))
|
||||
assign(new_capacity, first, last, std::iterator_traits<Iterator>::iterator_category());
|
||||
#else
|
||||
assign(new_capacity, first, last, BOOST_DEDUCED_TYPENAME std::iterator_traits<Iterator>::iterator_category());
|
||||
@@ -2798,7 +2798,7 @@ private:
|
||||
template <class Iterator>
|
||||
void insert(const iterator& pos, Iterator first, Iterator last, const false_type&) {
|
||||
BOOST_CB_IS_CONVERTIBLE(Iterator, value_type); // check for invalid iterator type
|
||||
#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x581))
|
||||
#if BOOST_WORKAROUND(BOOST_BORLANDC, BOOST_TESTED_AT(0x581))
|
||||
insert(pos, first, last, std::iterator_traits<Iterator>::iterator_category());
|
||||
#else
|
||||
insert(pos, first, last, BOOST_DEDUCED_TYPENAME std::iterator_traits<Iterator>::iterator_category());
|
||||
@@ -2889,7 +2889,7 @@ private:
|
||||
template <class Iterator>
|
||||
void rinsert(const iterator& pos, Iterator first, Iterator last, const false_type&) {
|
||||
BOOST_CB_IS_CONVERTIBLE(Iterator, value_type); // check for invalid iterator type
|
||||
#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x581))
|
||||
#if BOOST_WORKAROUND(BOOST_BORLANDC, BOOST_TESTED_AT(0x581))
|
||||
rinsert(pos, first, last, std::iterator_traits<Iterator>::iterator_category());
|
||||
#else
|
||||
rinsert(pos, first, last, BOOST_DEDUCED_TYPENAME std::iterator_traits<Iterator>::iterator_category());
|
||||
|
||||
@@ -259,7 +259,10 @@ struct iterator
|
||||
#endif // #if BOOST_CB_ENABLE_DEBUG
|
||||
|
||||
//! Assign operator.
|
||||
iterator& operator = (const iterator& it) {
|
||||
#if !defined(BOOST_NO_CXX11_DEFAULTED_FUNCTIONS)
|
||||
iterator& operator=(const iterator&) = default;
|
||||
#else
|
||||
iterator& operator=(const iterator& it) {
|
||||
if (this == &it)
|
||||
return *this;
|
||||
#if BOOST_CB_ENABLE_DEBUG
|
||||
@@ -269,6 +272,7 @@ struct iterator
|
||||
m_it = it.m_it;
|
||||
return *this;
|
||||
}
|
||||
#endif
|
||||
|
||||
// Random access iterator methods
|
||||
|
||||
|
||||
@@ -121,7 +121,7 @@ public:<br>
|
||||
using circular_buffer<T, Alloc>::max_size;
|
||||
using circular_buffer<T, Alloc>::empty;
|
||||
|
||||
#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564))
|
||||
#if BOOST_WORKAROUND(BOOST_BORLANDC, BOOST_TESTED_AT(0x564))
|
||||
reference operator [] (size_type n) { return circular_buffer<T, Alloc>::operator[](n); }
|
||||
const_reference operator [] (size_type n) const { return circular_buffer<T, Alloc>::operator[](n); }
|
||||
#else
|
||||
@@ -1598,7 +1598,7 @@ private:
|
||||
static size_type init_capacity(const capacity_type& capacity_ctrl, Iterator first, Iterator last,
|
||||
const false_type&) {
|
||||
BOOST_CB_IS_CONVERTIBLE(Iterator, value_type); // check for invalid iterator type
|
||||
#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x581))
|
||||
#if BOOST_WORKAROUND(BOOST_BORLANDC, BOOST_TESTED_AT(0x581))
|
||||
return init_capacity(capacity_ctrl, first, last, std::iterator_traits<Iterator>::iterator_category());
|
||||
#else
|
||||
return init_capacity(
|
||||
|
||||
@@ -10,5 +10,6 @@
|
||||
],
|
||||
"maintainers": [
|
||||
"Jan Gaspar <jano_gaspar -at- yahoo.com>"
|
||||
]
|
||||
],
|
||||
"cxxstd": "03"
|
||||
}
|
||||
|
||||
@@ -233,7 +233,7 @@ void fifo_test(Buffer* buffer) {
|
||||
|
||||
// Initialize the buffer with some values before launching producer and consumer threads.
|
||||
for (unsigned long i = QUEUE_SIZE / 2L; i > 0; --i) {
|
||||
#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x581))
|
||||
#if BOOST_WORKAROUND(BOOST_BORLANDC, BOOST_TESTED_AT(0x581))
|
||||
buffer->push_front(Buffer::value_type());
|
||||
#else
|
||||
buffer->push_front(BOOST_DEDUCED_TYPENAME Buffer::value_type());
|
||||
|
||||
@@ -246,9 +246,9 @@ void allocator_test() {
|
||||
CB_CONTAINER<MyInteger> cb1(10, 0);
|
||||
const CB_CONTAINER<MyInteger> cb2(10, 0);
|
||||
CB_CONTAINER<MyInteger>::allocator_type& alloc_ref = cb1.get_allocator();
|
||||
(void)alloc_ref;
|
||||
CB_CONTAINER<MyInteger>::allocator_type alloc = cb2.get_allocator();
|
||||
alloc_ref.max_size();
|
||||
alloc.max_size();
|
||||
(void)alloc;
|
||||
|
||||
generic_test(cb1);
|
||||
|
||||
|
||||
@@ -71,6 +71,11 @@ class InstanceCounter {
|
||||
public:
|
||||
InstanceCounter() { increment(); }
|
||||
InstanceCounter(const InstanceCounter& y) { y.increment(); }
|
||||
InstanceCounter& operator=(const InstanceCounter& y) {
|
||||
decrement();
|
||||
y.increment();
|
||||
return *this;
|
||||
}
|
||||
~InstanceCounter() { decrement(); }
|
||||
static int count() { return ms_count; }
|
||||
private:
|
||||
@@ -106,12 +111,9 @@ struct MyInputIterator {
|
||||
typedef size_t size_type;
|
||||
typedef ptrdiff_t difference_type;
|
||||
explicit MyInputIterator(const vector_iterator& it) : m_it(it) {}
|
||||
MyInputIterator& operator = (const MyInputIterator& it) {
|
||||
if (this == &it)
|
||||
return *this;
|
||||
m_it = it.m_it;
|
||||
return *this;
|
||||
}
|
||||
|
||||
// Default assignment operator
|
||||
|
||||
reference operator * () const { return *m_it; }
|
||||
pointer operator -> () const { return &(operator*()); }
|
||||
MyInputIterator& operator ++ () {
|
||||
|
||||
Reference in New Issue
Block a user