From Jason Turner

[deque.cons]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmp2yxwjt_n/{from.md → to.md} +14 -4
tmp/tmp2yxwjt_n/{from.md → to.md} RENAMED
@@ -10,26 +10,26 @@ explicit deque(const Allocator&);
10
 
11
  ``` cpp
12
  explicit deque(size_type n, const Allocator& = Allocator());
13
  ```
14
 
 
 
15
  *Effects:* Constructs a `deque` with `n` default-inserted elements using
16
  the specified allocator.
17
 
18
- *Preconditions:* `T` is *Cpp17DefaultInsertable* into `*this`.
19
-
20
  *Complexity:* Linear in `n`.
21
 
22
  ``` cpp
23
  deque(size_type n, const T& value, const Allocator& = Allocator());
24
  ```
25
 
 
 
26
  *Effects:* Constructs a `deque` with `n` copies of `value`, using the
27
  specified allocator.
28
 
29
- *Preconditions:* `T` is *Cpp17CopyInsertable* into `*this`.
30
-
31
  *Complexity:* Linear in `n`.
32
 
33
  ``` cpp
34
  template<class InputIterator>
35
  deque(InputIterator first, InputIterator last, const Allocator& = Allocator());
@@ -38,5 +38,15 @@ template<class InputIterator>
38
  *Effects:* Constructs a `deque` equal to the range \[`first`, `last`),
39
  using the specified allocator.
40
 
41
  *Complexity:* Linear in `distance(first, last)`.
42
 
 
 
 
 
 
 
 
 
 
 
 
10
 
11
  ``` cpp
12
  explicit deque(size_type n, const Allocator& = Allocator());
13
  ```
14
 
15
+ *Preconditions:* `T` is *Cpp17DefaultInsertable* into `*this`.
16
+
17
  *Effects:* Constructs a `deque` with `n` default-inserted elements using
18
  the specified allocator.
19
 
 
 
20
  *Complexity:* Linear in `n`.
21
 
22
  ``` cpp
23
  deque(size_type n, const T& value, const Allocator& = Allocator());
24
  ```
25
 
26
+ *Preconditions:* `T` is *Cpp17CopyInsertable* into `*this`.
27
+
28
  *Effects:* Constructs a `deque` with `n` copies of `value`, using the
29
  specified allocator.
30
 
 
 
31
  *Complexity:* Linear in `n`.
32
 
33
  ``` cpp
34
  template<class InputIterator>
35
  deque(InputIterator first, InputIterator last, const Allocator& = Allocator());
 
38
  *Effects:* Constructs a `deque` equal to the range \[`first`, `last`),
39
  using the specified allocator.
40
 
41
  *Complexity:* Linear in `distance(first, last)`.
42
 
43
+ ``` cpp
44
+ template<container-compatible-range<T> R>
45
+ deque(from_range_t, R&& rg, const Allocator& = Allocator());
46
+ ```
47
+
48
+ *Effects:* Constructs a `deque` with the elements of the range `rg`,
49
+ using the specified allocator.
50
+
51
+ *Complexity:* Linear in `ranges::distance(rg)`.
52
+