Range-v3 Range algorithms, views, and actions for the Standard Library |

Public Member Functions | List of all members
ranges::v3::detail::indexed_datum< T[N], Index > Struct Template Reference

## Public Member Functions
T(& | get () noexcept)[N]
constexpr T const (& | get () const noexcept)[N]
constexpr | indexed_datum (meta::nil_={})
| indexed_datum (indexed_datum &&that)
| indexed_datum (indexed_datum const &that)
template<typename I , typename S , requires = (Sentinel<S, I>() && InputIterator<I>() && Constructible<T, reference_t<I>>())>
| indexed_datum (I first, S last)
template<typename R , requires = (InputRange<R>() && Constructible<T, range_reference_t<R>>())>
| indexed_datum (R &&r)
indexed_datum & | operator= (indexed_datum &&that)
indexed_datum & | operator= (indexed_datum const &that)
template<typename R , requires = (InputRange<R>() && Assignable<T &, range_reference_t<R>>())>
indexed_datum & | operator= (R &&r)
indexed_element< T[N], Index::value > | ref ()
constexpr indexed_element< T const [N], Index::value > | ref () const

## Member Function Documentation

## ◆ operator=() [1/2]

template<typename T , std::size_t N, typename Index >

indexed_datum& ranges::v3::detail::indexed_datum< T[N], Index >::operator= | ( | indexed_datum< T[N], Index > && | that | ) |

Precondition
  Assignable<T & T>())

References ranges::v3::move.

## ◆ operator=() [2/2]

template<typename T , std::size_t N, typename Index >

indexed_datum& ranges::v3::detail::indexed_datum< T[N], Index >::operator= | ( | indexed_datum< T[N], Index > const & | that | ) |

Precondition
  Assignable<T & T const &>())

References ranges::v3::copy.

## Constructor & Destructor Documentation

## ◆ indexed_datum() [1/3]

template<typename T , std::size_t N, typename Index >

constexpr ranges::v3::detail::indexed_datum< T[N], Index >::indexed_datum | ( | meta::nil_ | = `{}` | ) |

Precondition
  DefaultConstructible<T>()

## ◆ indexed_datum() [2/3]

template<typename T , std::size_t N, typename Index >

ranges::v3::detail::indexed_datum< T[N], Index >::indexed_datum | ( | indexed_datum< T[N], Index > && | that | ) |

Precondition
  MoveConstructible<T>()

## ◆ indexed_datum() [3/3]

template<typename T , std::size_t N, typename Index >

ranges::v3::detail::indexed_datum< T[N], Index >::indexed_datum | ( | indexed_datum< T[N], Index > const & | that | ) |

Precondition
  CopyConstructible<T>()