std::ranges...r::iterator(3)

πŸ“¦ version 2024.07.05, in nixpkgs unstable, opensuse-leap 16.0

okay so bestie, this is the std::ranges...r::iterator(3) page from the C++ Standard Libary πŸ’… β€” we're deep in std::ranges::adjacent_view::iterator::iterator territory and it's giving constructor reveal. Let's go ✨

✨ NAME ✨

  • std::ranges::adjacent_view::iterator::iterator β€”
  • std::ranges::adjacent_view::iterator::iterator

🌸 Synopsis 🌸

the synopsis, verbatim, because code doesn't get a vibe rewrite πŸ’–

          /*iterator*/() = default;
       (1) (since C++23)
          constexpr /*iterator*/( /*iterator*/<!Const> i )

              requires Const &&
       (2) (since C++23)

                  ranges::convertible_to<ranges::iterator_t<V>,
          ranges::iterator_t<Base>>;

What's the move? Construct an iterator. periodt 🫢

  1. Default constructor. Value-initializes the underlying array of iterators current_ to Base, as if by std::array<ranges::iterator_t<Base>, N>(). lowkey iconic.
  2. Conversion from /*iterator*/<false> to /*iterator*/<true>. Move constructs the underlying current_ member. slay.

There are also two private constructors, used by ranges::adjacent_view::begin and ranges::adjacent_view::end. These constructors are not accessible to users πŸ™ˆ β€” so no touching, bestie, they're not for us.

πŸŽ€ Parameters πŸŽ€

  • i β€” an /*iterator*/<false>

πŸ“ Example πŸ“

This section is incomplete 😭 Reason: no example

πŸ’… Category πŸ’…

  • * Todo no example

okay bye bestie πŸ’– β€” footer source/version/date check: http://cppreference.com, 2024.06.10, page std::ranges...r::iterator(3). Mwah βœ¨πŸŽ€

πŸ“¦ where this page comes from