ACTS
Experiment-independent tracking
Loading...
Searching...
No Matches
detray::ranges::views::iota< incr_t > Struct Template Reference

interface type to construct a iota_view with CTAD Range adaptor that constructs an iota view from a range, bounds, or start value. More...

#include <detray/utils/ranges/iota.hpp>

Inheritance diagram for detray::ranges::views::iota< incr_t >:
[legend]
Collaboration diagram for detray::ranges::views::iota< incr_t >:
[legend]

Public Types

using base_type = detray::ranges::iota_view<incr_t>
 Base sequence view implementation.
Public Types inherited from detray::ranges::iota_view< incr_t >
using iterator_t = iterator
 Iterator over generated values in the requested sequence.

Public Member Functions

constexpr iota (incr_t start)
 Construct the adaptor for a one-value sequence.
constexpr iota (incr_t start, incr_t end)
 Construct the adaptor from a start and one-past-the-end value.
template<concepts::interval interval_t>
requires (!std::same_as<interval_t, iota>)
constexpr iota (interval_t &&interval)
 Construct the adaptor from interval bounds.
Public Member Functions inherited from detray::ranges::iota_view< incr_t >
constexpr iota_view ()=default
 Default constructor (only works if imrementable_t is default constructible).
constexpr iota_view (incr_t start)
 Construct from just a start value to represent a single value seq.
constexpr iota_view (incr_t start, incr_t end)
 Construct from a start start and end value.
template<concepts::interval interval_t>
requires (!std::same_as<interval_t, iota_view>)
constexpr iota_view (interval_t &&interval)
 Construct from an interval that defines start and end values.
constexpr auto begin () const -> iterator_t
constexpr auto end () const -> iterator_t
constexpr auto size () const -> incr_t
Public Member Functions inherited from detray::ranges::view_interface< iota_view< incr_t > >
constexpr decltype(auto) back () const
 Return a reference to the last element.
constexpr auto data () const
 Return a pointer to the first element, or null for an empty view.
constexpr auto empty () const -> bool
 Check whether the view contains no elements.
constexpr decltype(auto) front () const
 Return a reference to the first element.
constexpr operator bool () const
 Test whether the view contains at least one element.
constexpr decltype(auto) operator[] (const dindex i) const
 Subscript operator that takes detray dindex.
constexpr auto size () const
 Return the number of elements in the view.

Detailed Description

template<std::incrementable incr_t>
struct detray::ranges::views::iota< incr_t >

interface type to construct a iota_view with CTAD Range adaptor that constructs an iota view from a range, bounds, or start value.

Constructor & Destructor Documentation

◆ iota() [1/3]

template<std::incrementable incr_t>
template<concepts::interval interval_t>
requires (!std::same_as<interval_t, iota>)
detray::ranges::views::iota< incr_t >::iota ( interval_t && interval)
explicitconstexpr

Construct the adaptor from interval bounds.

Parameters
intervalhalf-open interval supplying the sequence bounds

◆ iota() [2/3]

template<std::incrementable incr_t>
detray::ranges::views::iota< incr_t >::iota ( incr_t start,
incr_t end )
constexpr

Construct the adaptor from a start and one-past-the-end value.

Parameters
startfirst value in the sequence
endone-past-the-last value in the sequence

◆ iota() [3/3]

template<std::incrementable incr_t>
detray::ranges::views::iota< incr_t >::iota ( incr_t start)
explicitconstexpr

Construct the adaptor for a one-value sequence.

Parameters
startsole value in the sequence