14#ifndef RANGES_V3_VIEW_REPEAT_HPP
15#define RANGES_V3_VIEW_REPEAT_HPP
24#include <range/v3/utility/static_const.hpp>
27#include <range/v3/detail/prologue.hpp>
41 template<
typename Val>
45 semiregular_box_t<Val> value_;
52 std::ptrdiff_t n_ = 0;
56 explicit cursor(Val
const & value)
57 : value_(std::addressof(value))
59 Val
const & read()
const noexcept
63 bool equal(cursor
const & that)
const
75 void advance(std::ptrdiff_t d)
79 std::ptrdiff_t distance_to(cursor
const & that)
const
84 cursor begin_cursor()
const
86 return cursor{value_};
96 : value_(detail::move(value))
104 template(
typename Val)(
105 requires copy_constructible<Val>)
119#include <range/v3/detail/epilogue.hpp>
120#include <range/v3/detail/satisfy_boost_range.hpp>
RANGES_INLINE_VARIABLE(detail::to_container_fn< detail::from_range< std::vector > >, to_vector) template< template< typename... > class ContT > auto to(RANGES_HIDDEN_DETAIL(detail
For initializing a container of the specified type with the elements of an Range.
Definition: conversion.hpp:399
Definition: repeat.hpp:43
Definition: unreachable_sentinel.hpp:27
A utility for constructing a view from a (derived) type that implements begin and end cursors.
Definition: facade.hpp:66
Definition: repeat.hpp:103