view: conditional in-place iterator for single type views

This commit is contained in:
Michele Caini
2024-07-04 12:08:31 +02:00
parent b2cdc6aa57
commit 185dfaa08a

View File

@@ -646,7 +646,7 @@ public:
/*! @brief Unsigned integer type. */
using size_type = std::size_t;
/*! @brief Random access iterator type. */
using iterator = typename common_type::iterator;
using iterator = std::conditional_t<Policy == deletion_policy::in_place, internal::view_iterator<common_type, 1u, 0u>, typename common_type::iterator>;
/*! @brief Reverse iterator type. */
using reverse_iterator = std::conditional_t<Policy == deletion_policy::in_place, void, typename common_type::reverse_iterator>;