TwiceAsNice  2019-02-18
Namespaces | Classes | Functions
boost Namespace Reference

Namespaces

 cb_details
 

Classes

class  circular_buffer
 Circular buffer - a STL compliant container. More...
 
class  circular_buffer_space_optimized
 Space optimized circular buffer container adaptor. More...
 

Functions

template<class T , class Alloc >
bool operator== (const circular_buffer< T, Alloc > &lhs, const circular_buffer< T, Alloc > &rhs)
 Compare two circular_buffers element-by-element to determine if they are equal. More...
 
template<class T , class Alloc >
bool operator< (const circular_buffer< T, Alloc > &lhs, const circular_buffer< T, Alloc > &rhs)
 Compare two circular_buffers element-by-element to determine if the left one is lesser than the right one. More...
 
template<class T , class Alloc >
bool operator!= (const circular_buffer< T, Alloc > &lhs, const circular_buffer< T, Alloc > &rhs)
 Compare two circular_buffers element-by-element to determine if they are non-equal. More...
 
template<class T , class Alloc >
bool operator> (const circular_buffer< T, Alloc > &lhs, const circular_buffer< T, Alloc > &rhs)
 Compare two circular_buffers element-by-element to determine if the left one is greater than the right one. More...
 
template<class T , class Alloc >
bool operator<= (const circular_buffer< T, Alloc > &lhs, const circular_buffer< T, Alloc > &rhs)
 Compare two circular_buffers element-by-element to determine if the left one is lesser or equal to the right one. More...
 
template<class T , class Alloc >
bool operator>= (const circular_buffer< T, Alloc > &lhs, const circular_buffer< T, Alloc > &rhs)
 Compare two circular_buffers element-by-element to determine if the left one is greater or equal to the right one. More...
 
template<class T , class Alloc >
void swap (circular_buffer< T, Alloc > &lhs, circular_buffer< T, Alloc > &rhs)
 Swap the contents of two circular_buffers. More...
 
template<class T , class Alloc >
bool operator== (const circular_buffer_space_optimized< T, Alloc > &lhs, const circular_buffer_space_optimized< T, Alloc > &rhs)
 Test two space optimized circular buffers for equality. More...
 
template<class T , class Alloc >
bool operator< (const circular_buffer_space_optimized< T, Alloc > &lhs, const circular_buffer_space_optimized< T, Alloc > &rhs)
 Lexicographical comparison. More...
 
template<class T , class Alloc >
bool operator!= (const circular_buffer_space_optimized< T, Alloc > &lhs, const circular_buffer_space_optimized< T, Alloc > &rhs)
 Test two space optimized circular buffers for non-equality. More...
 
template<class T , class Alloc >
bool operator> (const circular_buffer_space_optimized< T, Alloc > &lhs, const circular_buffer_space_optimized< T, Alloc > &rhs)
 Lexicographical comparison. More...
 
template<class T , class Alloc >
bool operator<= (const circular_buffer_space_optimized< T, Alloc > &lhs, const circular_buffer_space_optimized< T, Alloc > &rhs)
 Lexicographical comparison. More...
 
template<class T , class Alloc >
bool operator>= (const circular_buffer_space_optimized< T, Alloc > &lhs, const circular_buffer_space_optimized< T, Alloc > &rhs)
 Lexicographical comparison. More...
 
template<class T , class Alloc >
void swap (circular_buffer_space_optimized< T, Alloc > &lhs, circular_buffer_space_optimized< T, Alloc > &rhs)
 Swap the contents of two space optimized circular buffers. More...
 

Function Documentation

◆ operator!=() [1/2]

template<class T , class Alloc >
bool boost::operator!= ( const circular_buffer_space_optimized< T, Alloc > &  lhs,
const circular_buffer_space_optimized< T, Alloc > &  rhs 
)
inline

Test two space optimized circular buffers for non-equality.

◆ operator!=() [2/2]

template<class T , class Alloc >
bool boost::operator!= ( const circular_buffer< T, Alloc > &  lhs,
const circular_buffer< T, Alloc > &  rhs 
)
inline

Compare two circular_buffers element-by-element to determine if they are non-equal.

Parameters
lhsThe circular_buffer to compare.
rhsThe circular_buffer to compare.
Returns
!(lhs == rhs)
Exceptions
Nothing.
Complexity
Linear (in the size of the circular_buffers).
Iterator Invalidation
Does not invalidate any iterators.
See also
operator==(const circular_buffer<T,Alloc>&, const circular_buffer<T,Alloc>&)

◆ operator<() [1/2]

template<class T , class Alloc >
bool boost::operator< ( const circular_buffer_space_optimized< T, Alloc > &  lhs,
const circular_buffer_space_optimized< T, Alloc > &  rhs 
)
inline

Lexicographical comparison.

◆ operator<() [2/2]

template<class T , class Alloc >
bool boost::operator< ( const circular_buffer< T, Alloc > &  lhs,
const circular_buffer< T, Alloc > &  rhs 
)
inline

Compare two circular_buffers element-by-element to determine if the left one is lesser than the right one.

Parameters
lhsThe circular_buffer to compare.
rhsThe circular_buffer to compare.
Returns
std::lexicographical_compare(lhs.begin(), lhs.end(), rhs.begin(), rhs.end())
Exceptions
Nothing.
Complexity
Linear (in the size of the circular_buffers).
Iterator Invalidation
Does not invalidate any iterators.

◆ operator<=() [1/2]

template<class T , class Alloc >
bool boost::operator<= ( const circular_buffer_space_optimized< T, Alloc > &  lhs,
const circular_buffer_space_optimized< T, Alloc > &  rhs 
)
inline

Lexicographical comparison.

◆ operator<=() [2/2]

template<class T , class Alloc >
bool boost::operator<= ( const circular_buffer< T, Alloc > &  lhs,
const circular_buffer< T, Alloc > &  rhs 
)
inline

Compare two circular_buffers element-by-element to determine if the left one is lesser or equal to the right one.

Parameters
lhsThe circular_buffer to compare.
rhsThe circular_buffer to compare.
Returns
!(rhs < lhs)
Exceptions
Nothing.
Complexity
Linear (in the size of the circular_buffers).
Iterator Invalidation
Does not invalidate any iterators.
See also
operator<(const circular_buffer<T,Alloc>&, const circular_buffer<T,Alloc>&)

◆ operator==() [1/2]

template<class T , class Alloc >
bool boost::operator== ( const circular_buffer_space_optimized< T, Alloc > &  lhs,
const circular_buffer_space_optimized< T, Alloc > &  rhs 
)
inline

Test two space optimized circular buffers for equality.

◆ operator==() [2/2]

template<class T , class Alloc >
bool boost::operator== ( const circular_buffer< T, Alloc > &  lhs,
const circular_buffer< T, Alloc > &  rhs 
)
inline

Compare two circular_buffers element-by-element to determine if they are equal.

Parameters
lhsThe circular_buffer to compare.
rhsThe circular_buffer to compare.
Returns
lhs.size() == rhs.size() && std::equal(lhs.begin(), lhs.end(), rhs.begin())
Exceptions
Nothing.
Complexity
Linear (in the size of the circular_buffers).
Iterator Invalidation
Does not invalidate any iterators.

◆ operator>() [1/2]

template<class T , class Alloc >
bool boost::operator> ( const circular_buffer_space_optimized< T, Alloc > &  lhs,
const circular_buffer_space_optimized< T, Alloc > &  rhs 
)
inline

Lexicographical comparison.

◆ operator>() [2/2]

template<class T , class Alloc >
bool boost::operator> ( const circular_buffer< T, Alloc > &  lhs,
const circular_buffer< T, Alloc > &  rhs 
)
inline

Compare two circular_buffers element-by-element to determine if the left one is greater than the right one.

Parameters
lhsThe circular_buffer to compare.
rhsThe circular_buffer to compare.
Returns
rhs < lhs
Exceptions
Nothing.
Complexity
Linear (in the size of the circular_buffers).
Iterator Invalidation
Does not invalidate any iterators.
See also
operator<(const circular_buffer<T,Alloc>&, const circular_buffer<T,Alloc>&)

◆ operator>=() [1/2]

template<class T , class Alloc >
bool boost::operator>= ( const circular_buffer_space_optimized< T, Alloc > &  lhs,
const circular_buffer_space_optimized< T, Alloc > &  rhs 
)
inline

Lexicographical comparison.

◆ operator>=() [2/2]

template<class T , class Alloc >
bool boost::operator>= ( const circular_buffer< T, Alloc > &  lhs,
const circular_buffer< T, Alloc > &  rhs 
)
inline

Compare two circular_buffers element-by-element to determine if the left one is greater or equal to the right one.

Parameters
lhsThe circular_buffer to compare.
rhsThe circular_buffer to compare.
Returns
!(lhs < rhs)
Exceptions
Nothing.
Complexity
Linear (in the size of the circular_buffers).
Iterator Invalidation
Does not invalidate any iterators.
See also
operator<(const circular_buffer<T,Alloc>&, const circular_buffer<T,Alloc>&)

◆ swap() [1/2]

template<class T , class Alloc >
void boost::swap ( circular_buffer_space_optimized< T, Alloc > &  lhs,
circular_buffer_space_optimized< T, Alloc > &  rhs 
)
inline

Swap the contents of two space optimized circular buffers.

◆ swap() [2/2]

template<class T , class Alloc >
void boost::swap ( circular_buffer< T, Alloc > &  lhs,
circular_buffer< T, Alloc > &  rhs 
)
inline

Swap the contents of two circular_buffers.

Postcondition
lhs contains elements of rhs and vice versa.
Parameters
lhsThe circular_buffer whose content will be swapped with rhs.
rhsThe circular_buffer whose content will be swapped with lhs.
Exceptions
Nothing.
Complexity
Constant (in the size of the circular_buffers).
Iterator Invalidation
Invalidates all iterators of both circular_buffers. (On the other hand the iterators still point to the same elements but within another container. If you want to rely on this feature you have to turn the Debug Support off otherwise an assertion will report an error if such invalidated iterator is used.)
See also
swap(circular_buffer<T, Alloc>&)