mirror of
https://github.com/boostorg/geometry.git
synced 2026-02-11 11:52:11 +00:00
rtree: added Allocators copy assignments for C++11, warning disabled.
[SVN r83704]
This commit is contained in:
@@ -16,6 +16,9 @@
|
||||
#pragma warning (disable : 4512) // assignment operator could not be generated
|
||||
#pragma warning (disable : 4127) // conditional expression is constant
|
||||
|
||||
// temporary?
|
||||
#pragma warning (disable : 4180) // qualifier applied to function type has no meaning
|
||||
|
||||
#else //BOOST_MSVC
|
||||
|
||||
#define BOOST_GEOMETRY_INDEX_DETAIL_USE_PARAM(A)
|
||||
|
||||
@@ -188,7 +188,8 @@ public:
|
||||
, leaf_allocator_type()
|
||||
{}
|
||||
|
||||
inline explicit allocators(Allocator const& alloc)
|
||||
template <typename Alloc>
|
||||
inline explicit allocators(Alloc const& alloc)
|
||||
: internal_node_allocator_type(alloc)
|
||||
, leaf_allocator_type(alloc)
|
||||
{}
|
||||
@@ -205,6 +206,15 @@ public:
|
||||
return *this;
|
||||
}
|
||||
|
||||
#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
|
||||
inline allocators & operator=(allocators const& a)
|
||||
{
|
||||
internal_node_allocator() = a.internal_node_allocator();
|
||||
leaf_allocator() = a.leaf_allocator();
|
||||
return *this;
|
||||
}
|
||||
#endif
|
||||
|
||||
void swap(allocators & a)
|
||||
{
|
||||
boost::swap(internal_node_allocator(), a.internal_node_allocator());
|
||||
|
||||
@@ -137,7 +137,8 @@ public:
|
||||
, leaf_allocator_type()
|
||||
{}
|
||||
|
||||
inline explicit allocators(Allocator const& alloc)
|
||||
template <typename Alloc>
|
||||
inline explicit allocators(Alloc const& alloc)
|
||||
: internal_node_allocator_type(alloc)
|
||||
, leaf_allocator_type(alloc)
|
||||
{}
|
||||
@@ -154,6 +155,15 @@ public:
|
||||
return *this;
|
||||
}
|
||||
|
||||
#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
|
||||
inline allocators & operator=(allocators const& a)
|
||||
{
|
||||
internal_node_allocator() = a.internal_node_allocator();
|
||||
leaf_allocator() = a.leaf_allocator();
|
||||
return *this;
|
||||
}
|
||||
#endif
|
||||
|
||||
void swap(allocators & a)
|
||||
{
|
||||
boost::swap(internal_node_allocator(), a.internal_node_allocator());
|
||||
|
||||
@@ -115,7 +115,8 @@ public:
|
||||
: node_allocator_type()
|
||||
{}
|
||||
|
||||
inline explicit allocators(Allocator const& alloc)
|
||||
template <typename Alloc>
|
||||
inline explicit allocators(Alloc const& alloc)
|
||||
: node_allocator_type(alloc)
|
||||
{}
|
||||
|
||||
@@ -129,6 +130,14 @@ public:
|
||||
return *this;
|
||||
}
|
||||
|
||||
#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
|
||||
inline allocators & operator=(allocators const& a)
|
||||
{
|
||||
node_allocator() = a.node_allocator();
|
||||
return *this;
|
||||
}
|
||||
#endif
|
||||
|
||||
void swap(allocators & a)
|
||||
{
|
||||
boost::swap(node_allocator(), a.node_allocator());
|
||||
|
||||
@@ -113,7 +113,8 @@ public:
|
||||
: node_allocator_type()
|
||||
{}
|
||||
|
||||
inline explicit allocators(Allocator const& alloc)
|
||||
template <typename Alloc>
|
||||
inline explicit allocators(Alloc const& alloc)
|
||||
: node_allocator_type(alloc)
|
||||
{}
|
||||
|
||||
@@ -127,6 +128,14 @@ public:
|
||||
return *this;
|
||||
}
|
||||
|
||||
#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
|
||||
inline allocators & operator=(allocators const& a)
|
||||
{
|
||||
node_allocator() = a.node_allocator();
|
||||
return *this;
|
||||
}
|
||||
#endif
|
||||
|
||||
void swap(allocators & a)
|
||||
{
|
||||
boost::swap(node_allocator(), a.node_allocator());
|
||||
|
||||
@@ -349,7 +349,7 @@ public:
|
||||
: m_members(src.m_members.indexable_getter(),
|
||||
src.m_members.equal_to(),
|
||||
src.m_members.parameters(),
|
||||
boost::move(allocator))
|
||||
allocator)
|
||||
{
|
||||
if ( src.m_members.allocators() == allocator )
|
||||
{
|
||||
@@ -1142,6 +1142,7 @@ private:
|
||||
{
|
||||
private:
|
||||
members_holder(members_holder const&);
|
||||
members_holder & operator=(members_holder const&);
|
||||
|
||||
public:
|
||||
template <typename IndGet, typename ValEq, typename Alloc>
|
||||
|
||||
Reference in New Issue
Block a user