forked from boostorg/intrusive
Replaced tabs with spaces. Removed unneeded TTI include in utilities
This commit is contained in:
@@ -205,7 +205,7 @@ struct get_slist_impl
|
|||||||
< typename NodeTraits::node
|
< typename NodeTraits::node
|
||||||
, boost::intrusive::value_traits<trivial_traits>
|
, boost::intrusive::value_traits<trivial_traits>
|
||||||
, boost::intrusive::constant_time_size<false>
|
, boost::intrusive::constant_time_size<false>
|
||||||
, boost::intrusive::size_type<std::size_t>
|
, boost::intrusive::size_type<std::size_t>
|
||||||
>::type
|
>::type
|
||||||
{};
|
{};
|
||||||
};
|
};
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
/////////////////////////////////////////////////////////////////////////////
|
/////////////////////////////////////////////////////////////////////////////
|
||||||
//
|
//
|
||||||
// (C) Copyright Ion Gaztanaga 2006-2014
|
// (C) Copyright Ion Gaztanaga 2006-2014
|
||||||
// (C) Copyright Microsoft Corporation 2014
|
// (C) Copyright Microsoft Corporation 2014
|
||||||
//
|
//
|
||||||
// Distributed under the Boost Software License, Version 1.0.
|
// Distributed under the Boost Software License, Version 1.0.
|
||||||
|
@@ -31,7 +31,6 @@
|
|||||||
#include <boost/detail/no_exceptions_support.hpp>
|
#include <boost/detail/no_exceptions_support.hpp>
|
||||||
#include <functional>
|
#include <functional>
|
||||||
#include <boost/functional/hash.hpp>
|
#include <boost/functional/hash.hpp>
|
||||||
#include <boost/tti/tti.hpp>
|
|
||||||
|
|
||||||
namespace boost {
|
namespace boost {
|
||||||
namespace intrusive {
|
namespace intrusive {
|
||||||
@@ -388,7 +387,7 @@ void destructor_impl(Hook &, detail::link_dispatch<normal_link>)
|
|||||||
#define BOOST_INTRUSIVE_BSR_INTRINSIC_64_BIT
|
#define BOOST_INTRUSIVE_BSR_INTRINSIC_64_BIT
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef __INTRIN_H_ // Avoid including any windows system header
|
#ifndef __INTRIN_H_ // Avoid including any windows system header
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
extern "C" {
|
extern "C" {
|
||||||
#endif // __cplusplus
|
#endif // __cplusplus
|
||||||
@@ -783,108 +782,108 @@ class array_initializer
|
|||||||
|
|
||||||
template<class It>
|
template<class It>
|
||||||
class reverse_iterator
|
class reverse_iterator
|
||||||
: public std::iterator<
|
: public std::iterator<
|
||||||
typename std::iterator_traits<It>::iterator_category,
|
typename std::iterator_traits<It>::iterator_category,
|
||||||
typename std::iterator_traits<It>::value_type,
|
typename std::iterator_traits<It>::value_type,
|
||||||
typename std::iterator_traits<It>::difference_type,
|
typename std::iterator_traits<It>::difference_type,
|
||||||
typename std::iterator_traits<It>::pointer,
|
typename std::iterator_traits<It>::pointer,
|
||||||
typename std::iterator_traits<It>::reference>
|
typename std::iterator_traits<It>::reference>
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
typedef typename std::iterator_traits<It>::pointer pointer;
|
typedef typename std::iterator_traits<It>::pointer pointer;
|
||||||
typedef typename std::iterator_traits<It>::reference reference;
|
typedef typename std::iterator_traits<It>::reference reference;
|
||||||
typedef typename std::iterator_traits<It>::difference_type difference_type;
|
typedef typename std::iterator_traits<It>::difference_type difference_type;
|
||||||
typedef It iterator_type;
|
typedef It iterator_type;
|
||||||
|
|
||||||
reverse_iterator(){}
|
reverse_iterator(){}
|
||||||
|
|
||||||
explicit reverse_iterator(It r)
|
explicit reverse_iterator(It r)
|
||||||
: m_current(r)
|
: m_current(r)
|
||||||
{}
|
{}
|
||||||
|
|
||||||
template<class OtherIt>
|
template<class OtherIt>
|
||||||
reverse_iterator(const reverse_iterator<OtherIt>& r)
|
reverse_iterator(const reverse_iterator<OtherIt>& r)
|
||||||
: m_current(r.base())
|
: m_current(r.base())
|
||||||
{}
|
{}
|
||||||
|
|
||||||
It base() const
|
It base() const
|
||||||
{ return m_current; }
|
{ return m_current; }
|
||||||
|
|
||||||
reference operator*() const
|
reference operator*() const
|
||||||
{ It temp(m_current); --temp; return *temp; }
|
{ It temp(m_current); --temp; return *temp; }
|
||||||
|
|
||||||
pointer operator->() const
|
pointer operator->() const
|
||||||
{ It temp(m_current); --temp; return temp.operator->(); }
|
{ It temp(m_current); --temp; return temp.operator->(); }
|
||||||
|
|
||||||
reference operator[](difference_type off) const
|
reference operator[](difference_type off) const
|
||||||
{ return this->m_current[-off]; }
|
{ return this->m_current[-off]; }
|
||||||
|
|
||||||
reverse_iterator& operator++()
|
reverse_iterator& operator++()
|
||||||
{ --m_current; return *this; }
|
{ --m_current; return *this; }
|
||||||
|
|
||||||
reverse_iterator operator++(int)
|
reverse_iterator operator++(int)
|
||||||
{
|
{
|
||||||
reverse_iterator temp = *this;
|
reverse_iterator temp = *this;
|
||||||
--m_current;
|
--m_current;
|
||||||
return temp;
|
return temp;
|
||||||
}
|
|
||||||
|
|
||||||
reverse_iterator& operator--()
|
|
||||||
{
|
|
||||||
++m_current;
|
|
||||||
return *this;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
reverse_iterator operator--(int)
|
reverse_iterator& operator--()
|
||||||
{
|
{
|
||||||
reverse_iterator temp(*this);
|
++m_current;
|
||||||
++m_current;
|
return *this;
|
||||||
return temp;
|
}
|
||||||
}
|
|
||||||
|
|
||||||
friend bool operator==(const reverse_iterator& l, const reverse_iterator& r)
|
reverse_iterator operator--(int)
|
||||||
{ return l.m_current == r.m_current; }
|
{
|
||||||
|
reverse_iterator temp(*this);
|
||||||
|
++m_current;
|
||||||
|
return temp;
|
||||||
|
}
|
||||||
|
|
||||||
friend bool operator!=(const reverse_iterator& l, const reverse_iterator& r)
|
friend bool operator==(const reverse_iterator& l, const reverse_iterator& r)
|
||||||
{ return l.m_current != r.m_current; }
|
{ return l.m_current == r.m_current; }
|
||||||
|
|
||||||
friend bool operator<(const reverse_iterator& l, const reverse_iterator& r)
|
friend bool operator!=(const reverse_iterator& l, const reverse_iterator& r)
|
||||||
{ return l.m_current < r.m_current; }
|
{ return l.m_current != r.m_current; }
|
||||||
|
|
||||||
friend bool operator<=(const reverse_iterator& l, const reverse_iterator& r)
|
friend bool operator<(const reverse_iterator& l, const reverse_iterator& r)
|
||||||
{ return l.m_current <= r.m_current; }
|
{ return l.m_current < r.m_current; }
|
||||||
|
|
||||||
friend bool operator>(const reverse_iterator& l, const reverse_iterator& r)
|
friend bool operator<=(const reverse_iterator& l, const reverse_iterator& r)
|
||||||
{ return l.m_current > r.m_current; }
|
{ return l.m_current <= r.m_current; }
|
||||||
|
|
||||||
friend bool operator>=(const reverse_iterator& l, const reverse_iterator& r)
|
friend bool operator>(const reverse_iterator& l, const reverse_iterator& r)
|
||||||
{ return l.m_current >= r.m_current; }
|
{ return l.m_current > r.m_current; }
|
||||||
|
|
||||||
reverse_iterator& operator+=(difference_type off)
|
friend bool operator>=(const reverse_iterator& l, const reverse_iterator& r)
|
||||||
{ m_current -= off; return *this; }
|
{ return l.m_current >= r.m_current; }
|
||||||
|
|
||||||
friend reverse_iterator operator+(const reverse_iterator & l, difference_type off)
|
reverse_iterator& operator+=(difference_type off)
|
||||||
{
|
{ m_current -= off; return *this; }
|
||||||
|
|
||||||
|
friend reverse_iterator operator+(const reverse_iterator & l, difference_type off)
|
||||||
|
{
|
||||||
reverse_iterator tmp(l.m_current);
|
reverse_iterator tmp(l.m_current);
|
||||||
tmp.m_current -= off;
|
tmp.m_current -= off;
|
||||||
return tmp;
|
return tmp;
|
||||||
}
|
}
|
||||||
|
|
||||||
reverse_iterator& operator-=(difference_type off)
|
reverse_iterator& operator-=(difference_type off)
|
||||||
{ m_current += off; return *this; }
|
{ m_current += off; return *this; }
|
||||||
|
|
||||||
friend reverse_iterator operator-(const reverse_iterator & l, difference_type off)
|
friend reverse_iterator operator-(const reverse_iterator & l, difference_type off)
|
||||||
{
|
{
|
||||||
reverse_iterator tmp(l.m_current);
|
reverse_iterator tmp(l.m_current);
|
||||||
tmp.m_current += off;
|
tmp.m_current += off;
|
||||||
return tmp;
|
return tmp;
|
||||||
}
|
}
|
||||||
|
|
||||||
friend difference_type operator-(const reverse_iterator& l, const reverse_iterator& r)
|
friend difference_type operator-(const reverse_iterator& l, const reverse_iterator& r)
|
||||||
{ return r.m_current - l.m_current; }
|
{ return r.m_current - l.m_current; }
|
||||||
|
|
||||||
private:
|
private:
|
||||||
It m_current; // the wrapped iterator
|
It m_current; // the wrapped iterator
|
||||||
};
|
};
|
||||||
|
|
||||||
template<class ConstNodePtr>
|
template<class ConstNodePtr>
|
||||||
|
@@ -190,12 +190,12 @@ struct pointer_traits
|
|||||||
static pointer priv_dynamic_cast_from(boost::intrusive::detail::false_, const UPtr &uptr)
|
static pointer priv_dynamic_cast_from(boost::intrusive::detail::false_, const UPtr &uptr)
|
||||||
{
|
{
|
||||||
element_type *p = dynamic_cast<element_type*>(&*uptr);
|
element_type *p = dynamic_cast<element_type*>(&*uptr);
|
||||||
if(!p){
|
if(!p){
|
||||||
return pointer();
|
return pointer();
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
return pointer_to(*p);
|
return pointer_to(*p);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
///@endcond
|
///@endcond
|
||||||
};
|
};
|
||||||
|
@@ -25,9 +25,9 @@ template <class T>
|
|||||||
struct priority_compare
|
struct priority_compare
|
||||||
{
|
{
|
||||||
//Compatibility with std::binary_function
|
//Compatibility with std::binary_function
|
||||||
typedef T first_argument_type;
|
typedef T first_argument_type;
|
||||||
typedef T second_argument_type;
|
typedef T second_argument_type;
|
||||||
typedef bool result_type;
|
typedef bool result_type;
|
||||||
|
|
||||||
bool operator()(const T &val, const T &val2) const
|
bool operator()(const T &val, const T &val2) const
|
||||||
{
|
{
|
||||||
|
Reference in New Issue
Block a user