@@ -8,7 +8,6 @@ Distributed under the Boost Software License, Version 1.0.
8
8
#ifndef BOOST_SMART_PTR_ALLOCATE_UNIQUE_HPP
9
9
#define BOOST_SMART_PTR_ALLOCATE_UNIQUE_HPP
10
10
11
- #include < boost/smart_ptr/detail/sp_noexcept.hpp>
12
11
#include < boost/core/allocator_access.hpp>
13
12
#include < boost/core/alloc_construct.hpp>
14
13
#include < boost/core/empty_value.hpp>
@@ -67,41 +66,41 @@ class sp_alloc_ptr {
67
66
public:
68
67
typedef T element_type;
69
68
70
- sp_alloc_ptr () BOOST_SP_NOEXCEPT
69
+ sp_alloc_ptr () noexcept
71
70
: p_() { }
72
71
73
72
#if defined(BOOST_MSVC) && BOOST_MSVC == 1600
74
- sp_alloc_ptr (T* p) BOOST_SP_NOEXCEPT
73
+ sp_alloc_ptr (T* p) noexcept
75
74
: p_(const_cast <typename boost::remove_cv<T>::type*>(p)) { }
76
75
#endif
77
76
78
- sp_alloc_ptr (std::size_t , P p) BOOST_SP_NOEXCEPT
77
+ sp_alloc_ptr (std::size_t , P p) noexcept
79
78
: p_(p) { }
80
79
81
- sp_alloc_ptr (std::nullptr_t ) BOOST_SP_NOEXCEPT
80
+ sp_alloc_ptr (std::nullptr_t ) noexcept
82
81
: p_() { }
83
82
84
83
T& operator *() const {
85
84
return *p_;
86
85
}
87
86
88
- T* operator ->() const BOOST_SP_NOEXCEPT {
87
+ T* operator ->() const noexcept {
89
88
return boost::to_address (p_);
90
89
}
91
90
92
- explicit operator bool () const BOOST_SP_NOEXCEPT {
91
+ explicit operator bool () const noexcept {
93
92
return !!p_;
94
93
}
95
94
96
- bool operator !() const BOOST_SP_NOEXCEPT {
95
+ bool operator !() const noexcept {
97
96
return !p_;
98
97
}
99
98
100
- P ptr () const BOOST_SP_NOEXCEPT {
99
+ P ptr () const noexcept {
101
100
return p_;
102
101
}
103
102
104
- BOOST_STATIC_CONSTEXPR std::size_t size () BOOST_SP_NOEXCEPT {
103
+ BOOST_STATIC_CONSTEXPR std::size_t size () noexcept {
105
104
return 1 ;
106
105
}
107
106
@@ -122,33 +121,33 @@ class sp_alloc_ptr<T[], P> {
122
121
public:
123
122
typedef T element_type;
124
123
125
- sp_alloc_ptr () BOOST_SP_NOEXCEPT
124
+ sp_alloc_ptr () noexcept
126
125
: p_() { }
127
126
128
- sp_alloc_ptr (std::size_t n, P p) BOOST_SP_NOEXCEPT
127
+ sp_alloc_ptr (std::size_t n, P p) noexcept
129
128
: p_(p)
130
129
, n_(n) { }
131
130
132
- sp_alloc_ptr (std::nullptr_t ) BOOST_SP_NOEXCEPT
131
+ sp_alloc_ptr (std::nullptr_t ) noexcept
133
132
: p_() { }
134
133
135
134
T& operator [](std::size_t i) const {
136
135
return p_[i];
137
136
}
138
137
139
- explicit operator bool () const BOOST_SP_NOEXCEPT {
138
+ explicit operator bool () const noexcept {
140
139
return !!p_;
141
140
}
142
141
143
- bool operator !() const BOOST_SP_NOEXCEPT {
142
+ bool operator !() const noexcept {
144
143
return !p_;
145
144
}
146
145
147
- P ptr () const BOOST_SP_NOEXCEPT {
146
+ P ptr () const noexcept {
148
147
return p_;
149
148
}
150
149
151
- std::size_t size () const BOOST_SP_NOEXCEPT {
150
+ std::size_t size () const noexcept {
152
151
return n_;
153
152
}
154
153
@@ -170,32 +169,32 @@ class sp_alloc_ptr<T[N], P> {
170
169
public:
171
170
typedef T element_type;
172
171
173
- sp_alloc_ptr () BOOST_SP_NOEXCEPT
172
+ sp_alloc_ptr () noexcept
174
173
: p_() { }
175
174
176
- sp_alloc_ptr (std::size_t , P p) BOOST_SP_NOEXCEPT
175
+ sp_alloc_ptr (std::size_t , P p) noexcept
177
176
: p_(p) { }
178
177
179
- sp_alloc_ptr (std::nullptr_t ) BOOST_SP_NOEXCEPT
178
+ sp_alloc_ptr (std::nullptr_t ) noexcept
180
179
: p_() { }
181
180
182
181
T& operator [](std::size_t i) const {
183
182
return p_[i];
184
183
}
185
184
186
- explicit operator bool () const BOOST_SP_NOEXCEPT {
185
+ explicit operator bool () const noexcept {
187
186
return !!p_;
188
187
}
189
188
190
- bool operator !() const BOOST_SP_NOEXCEPT {
189
+ bool operator !() const noexcept {
191
190
return !p_;
192
191
}
193
192
194
- P ptr () const BOOST_SP_NOEXCEPT {
193
+ P ptr () const noexcept {
195
194
return p_;
196
195
}
197
196
198
- BOOST_STATIC_CONSTEXPR std::size_t size () BOOST_SP_NOEXCEPT {
197
+ BOOST_STATIC_CONSTEXPR std::size_t size () noexcept {
199
198
return N;
200
199
}
201
200
@@ -228,31 +227,31 @@ operator!=(const sp_alloc_ptr<T, P>& lhs, const sp_alloc_ptr<T, P>& rhs)
228
227
template <class T , class P >
229
228
inline bool
230
229
operator ==(const sp_alloc_ptr<T, P>& lhs,
231
- std::nullptr_t ) BOOST_SP_NOEXCEPT
230
+ std::nullptr_t ) noexcept
232
231
{
233
232
return !lhs.ptr ();
234
233
}
235
234
236
235
template <class T , class P >
237
236
inline bool
238
237
operator ==(std::nullptr_t ,
239
- const sp_alloc_ptr<T, P>& rhs) BOOST_SP_NOEXCEPT
238
+ const sp_alloc_ptr<T, P>& rhs) noexcept
240
239
{
241
240
return !rhs.ptr ();
242
241
}
243
242
244
243
template <class T , class P >
245
244
inline bool
246
245
operator !=(const sp_alloc_ptr<T, P>& lhs,
247
- std::nullptr_t ) BOOST_SP_NOEXCEPT
246
+ std::nullptr_t ) noexcept
248
247
{
249
248
return !!lhs.ptr ();
250
249
}
251
250
252
251
template <class T , class P >
253
252
inline bool
254
253
operator !=(std::nullptr_t ,
255
- const sp_alloc_ptr<T, P>& rhs) BOOST_SP_NOEXCEPT
254
+ const sp_alloc_ptr<T, P>& rhs) noexcept
256
255
{
257
256
return !!rhs.ptr ();
258
257
}
@@ -293,7 +292,7 @@ class alloc_deleter
293
292
typedef detail::sp_alloc_ptr<T,
294
293
typename allocator_pointer<allocator>::type> pointer;
295
294
296
- explicit alloc_deleter (const allocator& a) BOOST_SP_NOEXCEPT
295
+ explicit alloc_deleter (const allocator& a) noexcept
297
296
: base(empty_init_t (), a) { }
298
297
299
298
void operator ()(pointer p) {
@@ -330,15 +329,15 @@ class sp_alloc_make {
330
329
}
331
330
}
332
331
333
- typename allocator::value_type* get () const BOOST_SP_NOEXCEPT {
332
+ typename allocator::value_type* get () const noexcept {
334
333
return boost::to_address (p_);
335
334
}
336
335
337
- allocator& state () BOOST_SP_NOEXCEPT {
336
+ allocator& state () noexcept {
338
337
return a_;
339
338
}
340
339
341
- type release () BOOST_SP_NOEXCEPT {
340
+ type release () noexcept {
342
341
pointer p = p_;
343
342
p_ = pointer ();
344
343
return type (typename deleter::pointer (n_, p), deleter (a_));
0 commit comments