From Jason Turner

[vector.bool]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmpyrrqeqp7/{from.md → to.md} +10 -6
tmp/tmpyrrqeqp7/{from.md → to.md} RENAMED
@@ -31,12 +31,14 @@ namespace std {
31
  reference& operator=(const reference& x) noexcept;
32
  void flip() noexcept; // flips the bit
33
  };
34
 
35
  // construct/copy/destroy:
36
- explicit vector(const Allocator& = Allocator());
37
- explicit vector(size_type n, const bool& value = bool(),
 
 
38
  const Allocator& = Allocator());
39
  template <class InputIterator>
40
  vector(InputIterator first, InputIterator last,
41
  const Allocator& = Allocator());
42
  vector(const vector<bool,Allocator>& x);
@@ -45,15 +47,15 @@ namespace std {
45
  vector(vector&&, const Allocator&);
46
  vector(initializer_list<bool>, const Allocator& = Allocator()));
47
  ~vector();
48
  vector<bool,Allocator>& operator=(const vector<bool,Allocator>& x);
49
  vector<bool,Allocator>& operator=(vector<bool,Allocator>&& x);
50
- vector operator=(initializer_list<bool>);
51
  template <class InputIterator>
52
  void assign(InputIterator first, InputIterator last);
53
  void assign(size_type n, const bool& t);
54
- void assign(initializer_list<bool>;
55
  allocator_type get_allocator() const noexcept;
56
 
57
  // iterators:
58
  iterator begin() noexcept;
59
  const_iterator begin() const noexcept;
@@ -87,12 +89,14 @@ namespace std {
87
  const_reference front() const;
88
  reference back();
89
  const_reference back() const;
90
 
91
  // modifiers:
 
92
  void push_back(const bool& x);
93
  void pop_back();
 
94
  iterator insert(const_iterator position, const bool& x);
95
  iterator insert (const_iterator position, size_type n, const bool& x);
96
  template <class InputIterator>
97
  iterator insert(const_iterator position,
98
  InputIterator first, InputIterator last);
@@ -146,8 +150,8 @@ y = b;
146
 
147
  ``` cpp
148
  template <class Allocator> struct hash<vector<bool, Allocator> >;
149
  ```
150
 
151
- *Requires:* the template specialization shall meet the requirements of
152
- class template `hash` ([[unord.hash]]).
153
 
 
31
  reference& operator=(const reference& x) noexcept;
32
  void flip() noexcept; // flips the bit
33
  };
34
 
35
  // construct/copy/destroy:
36
+ vector() : vector(Allocator()) { }
37
+ explicit vector(const Allocator&);
38
+ explicit vector(size_type n, const Allocator& = Allocator());
39
+ vector(size_type n, const bool& value,
40
  const Allocator& = Allocator());
41
  template <class InputIterator>
42
  vector(InputIterator first, InputIterator last,
43
  const Allocator& = Allocator());
44
  vector(const vector<bool,Allocator>& x);
 
47
  vector(vector&&, const Allocator&);
48
  vector(initializer_list<bool>, const Allocator& = Allocator()));
49
  ~vector();
50
  vector<bool,Allocator>& operator=(const vector<bool,Allocator>& x);
51
  vector<bool,Allocator>& operator=(vector<bool,Allocator>&& x);
52
+ vector& operator=(initializer_list<bool>);
53
  template <class InputIterator>
54
  void assign(InputIterator first, InputIterator last);
55
  void assign(size_type n, const bool& t);
56
+ void assign(initializer_list<bool>);
57
  allocator_type get_allocator() const noexcept;
58
 
59
  // iterators:
60
  iterator begin() noexcept;
61
  const_iterator begin() const noexcept;
 
89
  const_reference front() const;
90
  reference back();
91
  const_reference back() const;
92
 
93
  // modifiers:
94
+ template <class... Args> void emplace_back(Args&&... args);
95
  void push_back(const bool& x);
96
  void pop_back();
97
+ template <class... Args> iterator emplace(const_iterator position, Args&&... args);
98
  iterator insert(const_iterator position, const bool& x);
99
  iterator insert (const_iterator position, size_type n, const bool& x);
100
  template <class InputIterator>
101
  iterator insert(const_iterator position,
102
  InputIterator first, InputIterator last);
 
150
 
151
  ``` cpp
152
  template <class Allocator> struct hash<vector<bool, Allocator> >;
153
  ```
154
 
155
+ The template specialization shall meet the requirements of class
156
+ template `hash` ([[unord.hash]]).
157