Range-v3
Range algorithms, views, and actions for the Standard Library
ranges::views::ints_fn Struct Reference

#include <range/v3/view/iota.hpp>

+ Inheritance diagram for ranges::views::ints_fn:

Related Functions

(Note that these are not member functions.)

constexpr ints_fn ints {}
 

Additional Inherited Members

- Public Member Functions inherited from ranges::iota_view< int >
constexpr iota_view (int from)
 
constexpr iota_view (meta::id_t< int > from, meta::id_t< To > to)
 
- Public Member Functions inherited from ranges::view_facade< iota_view< int, To >, same_as< To, unreachable_sentinel_t > ? infinite :std::is_integral< int >::value &&std::is_integral< To >::value ? finite :unknown >
CPP_TEMPLATE_AUX_0 c (requires same_as< D, iota_view< int, To > >) ccconstexpr auto begin() -> detail::facade_iterator_t< D >
 Let d be static_cast<Derived &>(*this). Let b be std::as_const(d).begin_cursor() if that expression is well-formed; otherwise, let b be d.begin_cursor(). Let B be the type of b. More...
 
CPP_TEMPLATE_AUX_0 c (requires same_as< D, iota_view< int, To > >) ccconstexpr auto begin() const -> detail::facade_iterator_t< D const >
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
CPP_TEMPLATE_AUX_0 c (requires same_as< D, iota_view< int, To > >) ccconstexpr auto end() -> detail::facade_sentinel_t< D >
 Let d be static_cast<Derived &>(*this). Let e be std::as_const(d).end_cursor() if that expression is well-formed; otherwise, let e be d.end_cursor(). Let E be the type of e. More...
 
CPP_TEMPLATE_AUX_0 c (requires same_as< D, iota_view< int, To > >) ccconstexpr auto end() const -> detail::facade_sentinel_t< D const >
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
- Public Member Functions inherited from ranges::view_interface< iota_view< int, To >, Cardinality >
CPP_TEMPLATE_AUX_0 c (requires True &&(!detail::has_fixed_size_< Cardinality >) &&forward_range< D< True > const >) ccconstexpr bool empty() const noexcept(noexcept(bool(ranges::begin(std::declval< D< True > const & >())==ranges::end(std::declval< D< True > const & >()))))
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
CPP_TEMPLATE_AUX_0 c (requires True &&(!detail::has_fixed_size_< Cardinality >) &&forward_range< D< True >>) ccconstexpr bool empty() noexcept(noexcept(bool(ranges::begin(std::declval< D< True > & >())==ranges::end(std::declval< D< True > & >()))))
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
CPP_TEMPLATE_AUX_0 c (requires True &&(Cardinality< 0) &&(Cardinality !=infinite) &&(!forward_range< D< True > const >) &&sized_range< D< True > const >) ccconstexpr bool empty() const noexcept(noexcept(bool(ranges::size(std::declval< D< True > const & >())==0)))
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
CPP_TEMPLATE_AUX_0 c (requires True &&(Cardinality< 0) &&(Cardinality !=infinite) &&(!forward_range< D< True >>) &&sized_range< D< True >>) ccconstexpr bool empty() noexcept(noexcept(bool(ranges::size(std::declval< D< True > & >())==0)))
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
CPP_TEMPLATE_AUX_0 c (requires True &&(Cardinality< 0) &&sized_sentinel_for< sentinel_t< D< True > const >, iterator_t< D< True > const >> &&forward_range< D< True > const >) ccconstexpr detail
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
CPP_TEMPLATE_AUX_0 c (requires True &&common_range< D< True > const > &&bidirectional_range< D< True > const >) ccconstexpr range_reference_t< D< True > const > back() const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
CPP_TEMPLATE_AUX_0 c (requires True &&common_range< D< True >> &&bidirectional_range< D< True >>) ccconstexpr range_reference_t< D< True >> back()
 Access the last element in a range:
 
CPP_TEMPLATE_AUX_0 c (requires True &&contiguous_iterator< iterator_t< D< True > const >>) ccconstexpr std
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
CPP_TEMPLATE_AUX_0 c (requires True &&contiguous_iterator< iterator_t< D< True >>>) ccconstexpr std
 Returns a pointer to the block of memory containing the elements of a contiguous range:
 
CPP_TEMPLATE_AUX_0 c (requires True &&forward_range< D< True > const >) ccconstexpr range_reference_t< D< True > const > front() const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
CPP_TEMPLATE_AUX_0 c (requires True &&forward_range< D< True >>) ccconstexpr range_reference_t< D< True >> front()
 Access the first element in a range:
 
CPP_TEMPLATE_AUX_0 c (requires True &&input_range< D< True > & > &&sized_range< D< True > & >) ccconstexpr auto operator[](detail
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
CPP_TEMPLATE_AUX_0 c (requires True &&input_range< D< True > & >) ccconstexpr auto operator[](detail
 Python-ic slicing:
 
CPP_TEMPLATE_AUX_0 c (requires True &&input_range< D< True > & >) ccconstexpr auto operator[](detail
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
CPP_TEMPLATE_AUX_0 c (requires True &&input_range< D< True > const & > &&sized_range< D< True > const & >) ccconstexpr auto operator[](detail
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
CPP_TEMPLATE_AUX_0 c (requires True &&input_range< D< True > const & >) ccconstexpr auto operator[](detail
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
CPP_TEMPLATE_AUX_0 c (requires True &&input_range< D< True > const & >) ccconstexpr auto operator[](detail
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
CPP_TEMPLATE_AUX_0 c (requires True &&input_range< D< True >> &&sized_range< D< True >>) ccconstexpr auto operator[](detail
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
CPP_TEMPLATE_AUX_0 c (requires True &&input_range< D< True >>) ccconstexpr auto operator[](detail
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
CPP_TEMPLATE_AUX_0 c (requires True &&input_range< D< True >>) ccconstexpr auto operator[](detail
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
CPP_TEMPLATE_AUX_0 c (requires True &&random_access_range< D< True > const > &&sized_range< D< True > const >) ccconstexpr range_reference_t< D< True > const > at(range_difference_t< D< True >> n) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
CPP_TEMPLATE_AUX_0 c (requires True &&random_access_range< D< True > const >) ccconstexpr range_reference_t< D< True > const > operator[](range_difference_t< D< True >> n) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
CPP_TEMPLATE_AUX_0 c (requires True &&random_access_range< D< True >> &&sized_range< D< True >>) ccconstexpr range_reference_t< D< True >> at(range_difference_t< D< True >> n)
 Returns a reference to the element at specified location pos, with bounds checking.
 
CPP_TEMPLATE_AUX_0 c (requires True &&random_access_range< D< True >>) ccconstexpr range_reference_t< D< True >> operator[](range_difference_t< D< True >> n)
 Simple indexing:
 
 CPP_TEMPLATE_AUX_0 (requires True &&(Cardinality >=0)) static const expr std
 If the size of the range is known at compile-time and finite, return it.
 
 CPP_TEMPLATE_AUX_0 (requires True &&(forward_range< D< True > & >||(input_range< D< True > & > &&sized_range< D< True > & >))) const expr auto operator[](detail
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
 CPP_TEMPLATE_AUX_0 (requires True &&(forward_range< D< True > & >||(input_range< D< True > & > &&sized_range< D< True > & >))) const expr auto operator[](detail
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
 CPP_TEMPLATE_AUX_0 (requires True &&(forward_range< D< True > const & >||(input_range< D< True > const & > &&sized_range< D< True > const & >))) const expr auto operator[](detail
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
 CPP_TEMPLATE_AUX_0 (requires True &&(forward_range< D< True > const & >||(input_range< D< True > const & > &&sized_range< D< True > const & >))) const expr auto operator[](detail
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
 CPP_TEMPLATE_AUX_0 (requires True &&(forward_range< D< True >>||(input_range< D< True >> &&sized_range< D< True >>))) const expr auto operator[](detail
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
 CPP_TEMPLATE_AUX_0 (requires True &&(forward_range< D< True >>||(input_range< D< True >> &&sized_range< D< True >>))) const expr auto operator[](detail
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
 CPP_TEMPLATE_AUX_0 (requires True &&detail::can_empty_< D< True > const >) const expr explicit operator bool() const noexcept(noexcept(ranges::empty(std::declval< D< True > const & >())))
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
 CPP_TEMPLATE_AUX_0 (requires True &&detail::can_empty_< D< True >>) const expr explicit operator bool() noexcept(noexcept(ranges::empty(std::declval< D< True > & >())))
 
constexpr auto empty () const noexcept -> bool requires(detail::has_fixed_size_< Cardinality >)
 Test whether a range can be empty:
 
view_interfaceoperator= (view_interface &&)=default
 
view_interfaceoperator= (view_interface const &)=default
 
 view_interface (view_interface &&)=default
 
 view_interface (view_interface const &)=default
 
- Protected Types inherited from ranges::view_interface< iota_view< int, To >, Cardinality >
using D = meta::invoke< detail::dependent_< B >, iota_view< int, To > >
 
- Protected Member Functions inherited from ranges::view_facade< iota_view< int, To >, same_as< To, unreachable_sentinel_t > ? infinite :std::is_integral< int >::value &&std::is_integral< To >::value ? finite :unknown >
constexpr view_as_cursor begin_cursor () const
 
constexpr default_sentinel_t end_cursor () const
 
- Protected Member Functions inherited from ranges::view_interface< iota_view< int, To >, Cardinality >
constexpr iota_view< int, To > const & derived () const noexcept
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
constexpr iota_view< int, To > & derived () noexcept
 
- Protected Attributes inherited from ranges::view_facade< iota_view< int, To >, same_as< To, unreachable_sentinel_t > ? infinite :std::is_integral< int >::value &&std::is_integral< To >::value ? finite :unknown >
friend range_access
 

Detailed Description

ranges::views::ints

The ints view returns a range of monotonically increasing ints.

Example

#include <iostream>
#include <vector>
int main()
{
auto numbers = ranges::views::ints(3, 7);
std::cout << numbers << '\n';
}

Output

[3,4,5,6]

Syntax

auto output_range = ranges::views::ints(lower_bound, upper_bound);

Parameters

lower_bound
  • Optional lower bound
upper_bound
  • Exclusive upper bound
  • Required when lower_bound is specified
    • To create an infinite range with a lower_bound, use ranges::unreachable as the upper_bound
output_range
  • Range of monotonically increasing ints
  • When an upper_bound is not specified, the range is quasi-infinite