Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
std::ranges...ew::iterator(3) C++ Standard Libarystd::ranges...ew::iterator(3)

NAME
       std::ranges::cartesian_product_view::iterator   -   std::ranges::carte-
       sian_product_view::iterator

Synopsis
	  template< bool Const >  (since C++23)
	  class	/*iterator*/	  (exposition only*)

	  The return type  of  cartesian_product_view::begin,  and  of	carte-
       sian_product_view::end
	  when the underlying view V is	a common_range.

	  The type /*iterator*/<true> is returned by the const-qualified over-
       loads. The type
	  /*iterator*/<false>  is  returned  by	 the non-const-qualified over-
       loads.

Member types
	  Member type	    Definition
	  iterator_category std::input_iterator_tag
			      *	std::random_access_iterator_tag, if
				/*cartesian-product-is-random-access*/<Const,
       First, Vs...> is
				modeled,
			      *	std::bidirectional_iterator_tag, if
	  iterator_concept	 /*cartesian-product-is-bidirectional*/<Const,
       First, Vs...> is
				modeled,
			      *	std::forward_iterator_tag, if
				/*maybe-const*/<Const,	 First>	  models  for-
       ward_range,
			      *	std::input_iterator_tag	otherwise
	  value_type		     std::tuple<ranges::range_value_t</*maybe-
       const*/<Const, First>>,
				       ranges::range_value_t</*maybe-
       const*/<Const, Vs>>...>;
			    std::tuple<ranges::range_reference_t</*maybe-
       const*/<Const,
	  reference	    First>>,
				       ranges::range_reference_t</*maybe-
       const*/<Const,
			    Vs>>...>;
			    An implementation-defined signed-integer-like type
       (maybe the
	  difference_type    smallest  of  such	 types), which is sufficiently
       wide to store the
			    product of the maximum  sizes  of  all  underlying
       ranges, if such
			    type exists.
	  Parent (private)  /*maybe-const*/<Const, cartesian_product_view>.
			    (exposition-only member type*)

	  Data members

	  Member object	 Definition
	  parent_	  A  pointer  of  type	Parent	to  the	 parent	carte-
       sian_product_view.
	  (private)	 (exposition-only member object*)
			 A tuple of iterators to the current  underlying  ele-
       ments of	type
	  current_	  std::tuple<ranges::iterator_t</*maybe-const*/<Const,
       First>>,
	  (private)		     ranges::iterator_t</*maybe-const*/<Const,
       Vs>>...>.
			 (exposition-only member object*)

Member functions
	  constructor	  constructs an	iterator
	  (C++23)	  (public member function)
	  operator*	  accesses the element
	  (C++23)	  (public member function)
	  operator[]	  accesses an element by index
	  (C++23)	  (public member function)
	  operator++
	  operator++(int)
	  operator--	  advances or decrements the underlying	iterator
	  operator--(int) (public member function)
	  operator+=
	  operator-=
	  (C++23)
	  next		  advances the iterator
	  (C++23)	  (exposition-only member function*)
	  prev		  decrements the iterator
	  (C++23)	  (exposition-only member function*)
	  distance_from	  returns the distance between two iterators
	  (C++23)	  (exposition-only member function*)

Non-member functions
	  operator==  compares the underlying iterators
	  operator<=> (function)
	  (C++23)
	  operator+   performs iterator	arithmetic
	  operator-   (function)
	  (C++23)
	  iter_move    casts the result	of dereferencing the underlying	itera-
       tor to its
	  (C++23)     associated rvalue	reference type
		      (function)
	  iter_swap   swaps underlying pointed-to elements
	  (C++23)     (function)

Example
	   This	section	is incomplete
	   Reason: no example

References
	    * C++23 standard (ISO/IEC 14882:2023):

	    * 26.7.32.3	Class template cartesian_product_view::iterator
	      [range.cartesian.iterator]

See also
Category:
	    * Todo no example

http://cppreference.com		  2024.06.10	 std::ranges...ew::iterator(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=std::ranges::cartesian_product_view::iterator&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help