Home | History | Annotate | Download | only in bits

Lines Matching refs:unique_ptr

0 // unique_ptr implementation -*- C++ -*-
25 /** @file unique_ptr.h
83 /// 20.7.12.2 unique_ptr for single objects.
85 class unique_ptr
88 typedef __tuple_type unique_ptr::* __unspecified_bool_type;
89 typedef _Tp* unique_ptr::* __unspecified_pointer_type;
97 unique_ptr()
103 unique_ptr(pointer __p)
108 unique_ptr(pointer __p,
113 unique_ptr(pointer __p,
120 unique_ptr(unique_ptr&& __u)
124 unique_ptr(unique_ptr<_Up, _Up_Deleter>&& __u)
129 ~unique_ptr() { reset(); }
132 unique_ptr&
133 operator=(unique_ptr&& __u)
141 unique_ptr&
142 operator=(unique_ptr<_Up, _Up_Deleter>&& __u)
149 unique_ptr&
185 { return get() == 0 ? 0 : &unique_ptr::_M_t; }
207 swap(unique_ptr&& __u)
214 unique_ptr(const unique_ptr&) = delete;
217 unique_ptr(const unique_ptr<_Up, _Up_Deleter>&) = delete;
219 unique_ptr& operator=(const unique_ptr&) = delete;
222 unique_ptr& operator=(const unique_ptr<_Up, _Up_Deleter>&) = delete;
228 /// 20.7.12.3 unique_ptr for array objects with a runtime length
233 class unique_ptr<_Tp[], _Tp_Deleter>
236 typedef __tuple_type unique_ptr::* __unspecified_bool_type;
237 typedef _Tp* unique_ptr::* __unspecified_pointer_type;
245 unique_ptr()
251 unique_ptr(pointer __p)
256 unique_ptr(pointer __p,
261 unique_ptr(pointer __p,
268 unique_ptr(unique_ptr&& __u)
272 unique_ptr(unique_ptr<_Up, _Up_Deleter>&& __u)
277 ~unique_ptr() { reset(); }
280 unique_ptr&
281 operator=(unique_ptr&& __u)
289 unique_ptr&
290 operator=(unique_ptr<_Up, _Up_Deleter>&& __u)
297 unique_ptr&
327 { return get() == 0 ? 0 : &unique_ptr::_M_t; }
353 swap(unique_ptr&& __u)
360 unique_ptr(const unique_ptr&) = delete;
361 unique_ptr& operator=(const unique_ptr&) = delete;
366 unique_ptr(_Up*, typename
373 unique_ptr(_Up*, typename std::remove_reference<deleter_type>::type&&,
379 unique_ptr(_Up*, typename std::enable_if<std::is_convertible<_Up*,
388 swap(unique_ptr<_Tp, _Tp_Deleter>& __x,
389 unique_ptr<_Tp, _Tp_Deleter>& __y)
394 swap(unique_ptr<_Tp, _Tp_Deleter>&& __x,
395 unique_ptr<_Tp, _Tp_Deleter>& __y)
400 swap(unique_ptr<_Tp, _Tp_Deleter>& __x,
401 unique_ptr<_Tp, _Tp_Deleter>&& __y)
407 operator==(const unique_ptr<_Tp, _Tp_Deleter>& __x,
408 const unique_ptr<_Up, _Up_Deleter>& __y)
414 operator!=(const unique_ptr<_Tp, _Tp_Deleter>& __x,
415 const unique_ptr<_Up, _Up_Deleter>& __y)
421 operator<(const unique_ptr<_Tp, _Tp_Deleter>& __x,
422 const unique_ptr<_Up, _Up_Deleter>& __y)
428 operator<=(const unique_ptr<_Tp, _Tp_Deleter>& __x,
429 const unique_ptr<_Up, _Up_Deleter>& __y)
435 operator>(const unique_ptr<_Tp, _Tp_Deleter>& __x,
436 const unique_ptr<_Up, _Up_Deleter>& __y)
442 operator>=(const unique_ptr<_Tp, _Tp_Deleter>& __x,
443 const unique_ptr<_Up, _Up_Deleter>& __y)