5 #ifndef VCCC_RANGES_VIEWS_REPEAT_HPP
6 #define VCCC_RANGES_VIEWS_REPEAT_HPP
28 move_constructible< remove_cvref_t<W> >,
29 std::is_object< remove_cvref_t<W> >
33 return RV(std::forward<W>(
value));
36 template<
typename W,
typename Bound, std::enable_if_t<
conjunction<
37 move_constructible< remove_cvref_t<W> >,
38 std::is_object< remove_cvref_t<W> >,
46 return RV(std::forward<W>(
value), std::forward<Bound>(bound));
Definition: repeat_view.hpp:34
constexpr VCCC_INLINE_OR_STATIC detail::repeat_niebloid repeat
Definition: repeat.hpp:56
#define VCCC_INLINE_OR_STATIC
Definition: inline_or_static.hpp:9
Definition: directory.h:12
constexpr VCCC_INLINE_OR_STATIC detail::element_niebloid< 1 > value
Definition: key_value.hpp:35
Definition: conjunction.hpp:22
Definition: disjunction.hpp:22
Check if type models integer-like type (C++ 20 requirement)
Definition: is_integer_like.hpp:34
Definition: repeat.hpp:26
constexpr auto operator()(W &&value) const
Definition: repeat.hpp:31
constexpr auto operator()(W &&value, Bound &&bound) const
Definition: repeat.hpp:44
Models std::same_as
Definition: same_as.hpp:33
sentinel that always compares unequal to any weakly_incrementable type
Definition: unreachable_sentinel.hpp:17