From Jason Turner

[alg.remove]

Diff to HTML by rtfpessoa

tmp/tmp4ox3sr46/{from.md → to.md} RENAMED
@@ -17,19 +17,19 @@ requirements (Table  [[moveassignable]]).
17
  the range \[`first`, `last`) for which the following corresponding
18
  conditions hold: `*i == value, pred(*i) != false`.
19
 
20
  *Returns:* The end of the resulting range.
21
 
22
- *Remarks:* Stable.
23
 
24
  *Complexity:* Exactly `last - first` applications of the corresponding
25
  predicate.
26
 
27
  *Note:* each element in the range \[`ret`, `last`), where `ret` is the
28
  returned value, has a valid but unspecified state, because the
29
- algorithms can eliminate elements by swapping with or moving from
30
- elements that were originally in that range.
31
 
32
  ``` cpp
33
  template<class InputIterator, class OutputIterator, class T>
34
  OutputIterator
35
  remove_copy(InputIterator first, InputIterator last,
@@ -41,18 +41,18 @@ template<class InputIterator, class OutputIterator, class Predicate>
41
  OutputIterator result, Predicate pred);
42
  ```
43
 
44
  *Requires:* The ranges \[`first`, `last`) and \[`result`,
45
  `result + (last - first)`) shall not overlap. The expression
46
- `*result = *first` shall ve valid.
47
 
48
  *Effects:* Copies all the elements referred to by the iterator `i` in
49
  the range \[`first`, `last`) for which the following corresponding
50
  conditions do not hold: `*i == value, pred(*i) != false`.
51
 
52
  *Returns:* The end of the resulting range.
53
 
54
  *Complexity:* Exactly `last - first` applications of the corresponding
55
  predicate.
56
 
57
- *Remarks:* Stable.
58
 
 
17
  the range \[`first`, `last`) for which the following corresponding
18
  conditions hold: `*i == value, pred(*i) != false`.
19
 
20
  *Returns:* The end of the resulting range.
21
 
22
+ *Remarks:* Stable ([[algorithm.stable]]).
23
 
24
  *Complexity:* Exactly `last - first` applications of the corresponding
25
  predicate.
26
 
27
  *Note:* each element in the range \[`ret`, `last`), where `ret` is the
28
  returned value, has a valid but unspecified state, because the
29
+ algorithms can eliminate elements by moving from elements that were
30
+ originally in that range.
31
 
32
  ``` cpp
33
  template<class InputIterator, class OutputIterator, class T>
34
  OutputIterator
35
  remove_copy(InputIterator first, InputIterator last,
 
41
  OutputIterator result, Predicate pred);
42
  ```
43
 
44
  *Requires:* The ranges \[`first`, `last`) and \[`result`,
45
  `result + (last - first)`) shall not overlap. The expression
46
+ `*result = *first` shall be valid.
47
 
48
  *Effects:* Copies all the elements referred to by the iterator `i` in
49
  the range \[`first`, `last`) for which the following corresponding
50
  conditions do not hold: `*i == value, pred(*i) != false`.
51
 
52
  *Returns:* The end of the resulting range.
53
 
54
  *Complexity:* Exactly `last - first` applications of the corresponding
55
  predicate.
56
 
57
+ *Remarks:* Stable ([[algorithm.stable]]).
58