mirror of
https://github.com/microsoft/GSL.git
synced 2024-11-03 17:56:43 -05:00
Fixes to typedef's for span::const_iterator.
* Don't const-qualify span::const_iterator's value_type Fixes Microsoft/GSL#434
This commit is contained in:
parent
1a94e77910
commit
9d13cb14c3
10
gsl/span
10
gsl/span
@ -140,15 +140,15 @@ namespace details
|
||||
template <class Span, bool IsConst>
|
||||
class span_iterator
|
||||
{
|
||||
using element_type_ = typename Span::element_type;
|
||||
public:
|
||||
using iterator_category = std::random_access_iterator_tag;
|
||||
using value_type =
|
||||
std::conditional_t<IsConst, std::add_const_t<typename Span::element_type>,
|
||||
typename Span::element_type>;
|
||||
using value_type = std::remove_const_t<element_type_>;
|
||||
using difference_type = typename Span::index_type;
|
||||
|
||||
using pointer = std::add_pointer_t<value_type>;
|
||||
using reference = std::add_lvalue_reference_t<value_type>;
|
||||
using reference =
|
||||
std::conditional_t<IsConst, const element_type_, element_type_> &;
|
||||
using pointer = std::add_pointer_t<reference>;
|
||||
|
||||
constexpr span_iterator() noexcept : span_iterator(nullptr, 0) {}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user