update boost
This commit is contained in:
@@ -1,8 +1,8 @@
|
||||
// Boost.Geometry (aka GGL, Generic Geometry Library)
|
||||
|
||||
// Copyright (c) 2014, Oracle and/or its affiliates.
|
||||
|
||||
// Copyright (c) 2014-2021, Oracle and/or its affiliates.
|
||||
// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle
|
||||
// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle
|
||||
|
||||
// Licensed under the Boost Software License version 1.0.
|
||||
// http://www.boost.org/users/license.html
|
||||
@@ -10,13 +10,15 @@
|
||||
#ifndef BOOST_GEOMETRY_ITERATORS_FLATTEN_ITERATOR_HPP
|
||||
#define BOOST_GEOMETRY_ITERATORS_FLATTEN_ITERATOR_HPP
|
||||
|
||||
#include <boost/mpl/assert.hpp>
|
||||
#include <boost/type_traits/is_convertible.hpp>
|
||||
|
||||
#include <type_traits>
|
||||
|
||||
#include <boost/iterator/iterator_facade.hpp>
|
||||
#include <boost/iterator/iterator_categories.hpp>
|
||||
|
||||
#include <boost/geometry/core/assert.hpp>
|
||||
|
||||
|
||||
namespace boost { namespace geometry
|
||||
{
|
||||
|
||||
@@ -57,7 +59,7 @@ public:
|
||||
typedef InnerIterator inner_iterator_type;
|
||||
|
||||
// default constructor
|
||||
flatten_iterator() {}
|
||||
flatten_iterator() = default;
|
||||
|
||||
// for begin
|
||||
flatten_iterator(OuterIterator outer_it, OuterIterator outer_end)
|
||||
@@ -76,7 +78,13 @@ public:
|
||||
typename OtherOuterIterator, typename OtherInnerIterator,
|
||||
typename OtherValue,
|
||||
typename OtherAccessInnerBegin, typename OtherAccessInnerEnd,
|
||||
typename OtherReference
|
||||
typename OtherReference,
|
||||
std::enable_if_t
|
||||
<
|
||||
std::is_convertible<OtherOuterIterator, OuterIterator>::value
|
||||
&& std::is_convertible<OtherInnerIterator, InnerIterator>::value,
|
||||
int
|
||||
> = 0
|
||||
>
|
||||
flatten_iterator(flatten_iterator
|
||||
<
|
||||
@@ -90,21 +98,9 @@ public:
|
||||
: m_outer_it(other.m_outer_it),
|
||||
m_outer_end(other.m_outer_end),
|
||||
m_inner_it(other.m_inner_it)
|
||||
{
|
||||
static const bool are_conv
|
||||
= boost::is_convertible
|
||||
<
|
||||
OtherOuterIterator, OuterIterator
|
||||
>::value
|
||||
&& boost::is_convertible
|
||||
<
|
||||
OtherInnerIterator, InnerIterator
|
||||
>::value;
|
||||
{}
|
||||
|
||||
BOOST_MPL_ASSERT_MSG((are_conv),
|
||||
NOT_CONVERTIBLE,
|
||||
(types<OtherOuterIterator, OtherInnerIterator>));
|
||||
}
|
||||
flatten_iterator(flatten_iterator const& other) = default;
|
||||
|
||||
flatten_iterator& operator=(flatten_iterator const& other)
|
||||
{
|
||||
@@ -215,7 +211,7 @@ private:
|
||||
}
|
||||
while ( empty(m_outer_it) );
|
||||
m_inner_it = AccessInnerEnd::apply(*m_outer_it);
|
||||
}
|
||||
}
|
||||
--m_inner_it;
|
||||
}
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user