From Jason Turner

[deque.modifiers]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmpot4e5bv6/{from.md → to.md} +20 -20
tmp/tmpot4e5bv6/{from.md → to.md} RENAMED
@@ -1,29 +1,29 @@
1
  #### Modifiers <a id="deque.modifiers">[[deque.modifiers]]</a>
2
 
3
  ``` cpp
4
- iterator insert(const_iterator position, const T& x);
5
- iterator insert(const_iterator position, T&& x);
6
- iterator insert(const_iterator position, size_type n, const T& x);
7
  template<class InputIterator>
8
- iterator insert(const_iterator position,
9
  InputIterator first, InputIterator last);
10
  template<container-compatible-range<T> R>
11
- iterator insert_range(const_iterator position, R&& rg);
12
- iterator insert(const_iterator position, initializer_list<T>);
13
 
14
- template<class... Args> reference emplace_front(Args&&... args);
15
- template<class... Args> reference emplace_back(Args&&... args);
16
- template<class... Args> iterator emplace(const_iterator position, Args&&... args);
17
- void push_front(const T& x);
18
- void push_front(T&& x);
19
  template<container-compatible-range<T> R>
20
- void prepend_range(R&& rg);
21
- void push_back(const T& x);
22
- void push_back(T&& x);
23
  template<container-compatible-range<T> R>
24
- void append_range(R&& rg);
25
  ```
26
 
27
  *Effects:* An insertion in the middle of the deque invalidates all the
28
  iterators and references to elements of the deque. An insertion at
29
  either end of the deque invalidates all the iterators to the deque, but
@@ -35,20 +35,20 @@ the deque. Inserting a single element at either the beginning or end of
35
  a deque always takes constant time and causes a single call to a
36
  constructor of `T`.
37
 
38
  *Remarks:* If an exception is thrown other than by the copy constructor,
39
  move constructor, assignment operator, or move assignment operator of
40
- `T` there are no effects. If an exception is thrown while inserting a
41
  single element at either end, there are no effects. Otherwise, if an
42
  exception is thrown by the move constructor of a
43
  non-*Cpp17CopyInsertable* `T`, the effects are unspecified.
44
 
45
  ``` cpp
46
- iterator erase(const_iterator position);
47
- iterator erase(const_iterator first, const_iterator last);
48
- void pop_front();
49
- void pop_back();
50
  ```
51
 
52
  *Effects:* An erase operation that erases the last element of a deque
53
  invalidates only the past-the-end iterator and all iterators and
54
  references to the erased elements. An erase operation that erases the
 
1
  #### Modifiers <a id="deque.modifiers">[[deque.modifiers]]</a>
2
 
3
  ``` cpp
4
+ constexpr iterator insert(const_iterator position, const T& x);
5
+ constexpr iterator insert(const_iterator position, T&& x);
6
+ constexpr iterator insert(const_iterator position, size_type n, const T& x);
7
  template<class InputIterator>
8
+ constexpr iterator insert(const_iterator position,
9
  InputIterator first, InputIterator last);
10
  template<container-compatible-range<T> R>
11
+ constexpr iterator insert_range(const_iterator position, R&& rg);
12
+ constexpr iterator insert(const_iterator position, initializer_list<T>);
13
 
14
+ template<class... Args> constexpr reference emplace_front(Args&&... args);
15
+ template<class... Args> constexpr reference emplace_back(Args&&... args);
16
+ template<class... Args> constexpr iterator emplace(const_iterator position, Args&&... args);
17
+ constexpr void push_front(const T& x);
18
+ constexpr void push_front(T&& x);
19
  template<container-compatible-range<T> R>
20
+ constexpr void prepend_range(R&& rg);
21
+ constexpr void push_back(const T& x);
22
+ constexpr void push_back(T&& x);
23
  template<container-compatible-range<T> R>
24
+ constexpr void append_range(R&& rg);
25
  ```
26
 
27
  *Effects:* An insertion in the middle of the deque invalidates all the
28
  iterators and references to elements of the deque. An insertion at
29
  either end of the deque invalidates all the iterators to the deque, but
 
35
  a deque always takes constant time and causes a single call to a
36
  constructor of `T`.
37
 
38
  *Remarks:* If an exception is thrown other than by the copy constructor,
39
  move constructor, assignment operator, or move assignment operator of
40
+ `T`, there are no effects. If an exception is thrown while inserting a
41
  single element at either end, there are no effects. Otherwise, if an
42
  exception is thrown by the move constructor of a
43
  non-*Cpp17CopyInsertable* `T`, the effects are unspecified.
44
 
45
  ``` cpp
46
+ constexpr iterator erase(const_iterator position);
47
+ constexpr iterator erase(const_iterator first, const_iterator last);
48
+ constexpr void pop_front();
49
+ constexpr void pop_back();
50
  ```
51
 
52
  *Effects:* An erase operation that erases the last element of a deque
53
  invalidates only the past-the-end iterator and all iterators and
54
  references to the erased elements. An erase operation that erases the