From Jason Turner

[container.node.overview]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmp7_lb4kw1/{from.md → to.md} +16 -16
tmp/tmp7_lb4kw1/{from.md → to.md} RENAMED
@@ -42,41 +42,41 @@ public:
42
  using key_type = see below; // not present for set containers
43
  using mapped_type = see below; // not present for set containers
44
  using allocator_type = see below;
45
 
46
  private:
47
- using container_node_type = unspecified; // exposition only
48
- using ator_traits = allocator_traits<allocator_type>; // exposition only
49
 
50
- typename ator_traits::template
51
- rebind_traits<container_node_type>::pointer ptr_; // exposition only
52
  optional<allocator_type> alloc_; // exposition only
53
 
54
  public:
55
  // [container.node.cons], constructors, copy, and assignment
56
  constexpr node-handle() noexcept : ptr_(), alloc_() {}
57
- node-handle(node-handle&&) noexcept;
58
- node-handle& operator=(node-handle&&);
59
 
60
  // [container.node.dtor], destructor
61
- ~node-handle();
62
 
63
  // [container.node.observers], observers
64
- value_type& value() const; // not present for map containers
65
  key_type& key() const; // not present for set containers
66
- mapped_type& mapped() const; // not present for set containers
67
 
68
- allocator_type get_allocator() const;
69
- explicit operator bool() const noexcept;
70
- [[nodiscard]] bool empty() const noexcept;
71
 
72
  // [container.node.modifiers], modifiers
73
- void swap(node-handle&)
74
- noexcept(ator_traits::propagate_on_container_swap::value ||
75
- ator_traits::is_always_equal::value);
76
 
77
- friend void swap(node-handle& x, node-handle& y) noexcept(noexcept(x.swap(y))) {
78
  x.swap(y);
79
  }
80
  };
81
  ```
82
 
 
42
  using key_type = see below; // not present for set containers
43
  using mapped_type = see below; // not present for set containers
44
  using allocator_type = see below;
45
 
46
  private:
47
+ using container-node-type = unspecified; // exposition only
48
+ using ator-traits = allocator_traits<allocator_type>; // exposition only
49
 
50
+ typename ator-traits::template
51
+ rebind_traits<container-node-type>::pointer ptr_; // exposition only
52
  optional<allocator_type> alloc_; // exposition only
53
 
54
  public:
55
  // [container.node.cons], constructors, copy, and assignment
56
  constexpr node-handle() noexcept : ptr_(), alloc_() {}
57
+ constexpr node-handle(node-handle&&) noexcept;
58
+ constexpr node-handle& operator=(node-handle&&);
59
 
60
  // [container.node.dtor], destructor
61
+ constexpr ~node-handle();
62
 
63
  // [container.node.observers], observers
64
+ constexpr value_type& value() const; // not present for map containers
65
  key_type& key() const; // not present for set containers
66
+ constexpr mapped_type& mapped() const; // not present for set containers
67
 
68
+ constexpr allocator_type get_allocator() const;
69
+ constexpr explicit operator bool() const noexcept;
70
+ constexpr bool empty() const noexcept;
71
 
72
  // [container.node.modifiers], modifiers
73
+ constexpr void swap(node-handle&)
74
+ noexcept(ator-traits::propagate_on_container_swap::value ||
75
+ ator-traits::is_always_equal::value);
76
 
77
+ friend constexpr void swap(node-handle& x, node-handle& y) noexcept(noexcept(x.swap(y))) {
78
  x.swap(y);
79
  }
80
  };
81
  ```
82