Differential D101396 Diff 344185 libcxx/test/std/containers/views/span.iterators/iterator_concept_conformance.compile.pass.cpp
Changeset View
Changeset View
Standalone View
Standalone View
libcxx/test/std/containers/views/span.iterators/iterator_concept_conformance.compile.pass.cpp
Show All 14 Lines | |||||
#include <span> | #include <span> | ||||
#include <iterator> | #include <iterator> | ||||
using iterator = std::span<int>::iterator; | using iterator = std::span<int>::iterator; | ||||
using reverse_iterator = std::span<int>::reverse_iterator; | using reverse_iterator = std::span<int>::reverse_iterator; | ||||
using value_type = int; | using value_type = int; | ||||
static_assert(std::random_access_iterator<iterator>); | static_assert(std::contiguous_iterator<iterator>); | ||||
static_assert(std::indirectly_writable<iterator, value_type>); | static_assert(std::indirectly_writable<iterator, value_type>); | ||||
static_assert(std::sentinel_for<iterator, iterator>); | static_assert(std::sentinel_for<iterator, iterator>); | ||||
static_assert(!std::sentinel_for<iterator, reverse_iterator>); | static_assert(!std::sentinel_for<iterator, reverse_iterator>); | ||||
static_assert(std::sized_sentinel_for<iterator, iterator>); | static_assert(std::sized_sentinel_for<iterator, iterator>); | ||||
static_assert(!std::sized_sentinel_for<iterator, reverse_iterator>); | static_assert(!std::sized_sentinel_for<iterator, reverse_iterator>); |