home | help
std::deque::prepend_range(3)   C++ Standard Libary  std::deque::prepend_range(3)

NAME
     std::deque::prepend_range - std::deque::prepend_range

Synopsis
	template< container-compatible-range<T> R >  (since C++23)
	void prepend_range( R&& rg );

	Inserts,  in  non-reversing  order,  copies of elements in rg before be-
     gin(). Each
	iterator in the range rg is dereferenced exactly once.

	All iterators (including the end() iterator) are invalidated. No  refer-
     ences are
	invalidated.

Parameters
	rg		-	       a container compatible range, that is, an
     input_range
				     whose elements are convertible to T

Type requirements
	-
	T must be EmplaceConstructible into deque from *ranges::begin(rg). Also,
     T must be
	MoveInsertable into deque and T satisfies MoveConstructible, MoveAssign-
     able, and
	Swappable. Otherwise, the behavior is undefined.

Return value
	(none)

Complexity
	Linear in size of rg.

Notes
	    Feature-test macro	     Value    Std		    Feature
	__cpp_lib_containers_ranges 202202L  (C++23)  Ranges-aware  construction
     and insertion

Example
     // Run this code

      #include <algorithm>
      #include <cassert>
      #include <deque>
      #include <vector>

      int main()
      {
	  auto container = std::deque{0, 1, 2, 3};
	  const auto rg = std::vector{-3, -2, -1};

      #if __cpp_lib_containers_ranges
	  container.prepend_range(rg);
      #else
	  container.insert(container.begin(), rg.cbegin(), rg.cend());
      #endif
	  assert(std::ranges::equal(container,	std::deque{-3,	-2, -1, 0, 1, 2,
     3}));
      }

See also
	append_range  adds a range of elements to the end
	(C++23)       (public member function)
	insert_range  inserts a range of elements
	(C++23)       (public member function)
	push_front    inserts an element to the beginning
		      (public member function)
	emplace_front constructs an element in-place at the beginning
	(C++11)       (public member function)

http://cppreference.com 	   2024.06.10	    std::deque::prepend_range(3)

home | help