Imported Upstream version 1.64.0
[platform/upstream/boost.git] / doc / html / move / reference.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2 <html>
3 <head>
4 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
5 <title>Reference</title>
6 <link rel="stylesheet" href="../../../doc/src/boostbook.css" type="text/css">
7 <meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
8 <link rel="home" href="../index.html" title="The Boost C++ Libraries BoostBook Documentation Subset">
9 <link rel="up" href="../move.html" title="Chapter&#160;25.&#160;Boost.Move">
10 <link rel="prev" href="release_notes.html" title="Release Notes">
11 <link rel="next" href="../boost/adl_move_swap.html" title="Function template adl_move_swap">
12 </head>
13 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
14 <table cellpadding="2" width="100%"><tr>
15 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../boost.png"></td>
16 <td align="center"><a href="../../../index.html">Home</a></td>
17 <td align="center"><a href="../../../libs/libraries.htm">Libraries</a></td>
18 <td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
19 <td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
20 <td align="center"><a href="../../../more/index.htm">More</a></td>
21 </tr></table>
22 <hr>
23 <div class="spirit-nav">
24 <a accesskey="p" href="release_notes.html"><img src="../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../move.html"><img src="../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../boost/adl_move_swap.html"><img src="../../../doc/src/images/next.png" alt="Next"></a>
25 </div>
26 <div class="section">
27 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
28 <a name="move.reference"></a>Reference</h2></div></div></div>
29 <div class="toc"><dl class="toc">
30 <dt><span class="section"><a href="reference.html#header.boost.move.adl_move_swap_hpp">Header &lt;boost/move/adl_move_swap.hpp&gt;</a></span></dt>
31 <dt><span class="section"><a href="reference.html#header.boost.move.algo.adaptive_merge_hpp">Header &lt;boost/move/algo/adaptive_merge.hpp&gt;</a></span></dt>
32 <dt><span class="section"><a href="reference.html#header.boost.move.algo.adaptive_sort_hpp">Header &lt;boost/move/algo/adaptive_sort.hpp&gt;</a></span></dt>
33 <dt><span class="section"><a href="reference.html#header.boost.move.algorithm_hpp">Header &lt;boost/move/algorithm.hpp&gt;</a></span></dt>
34 <dt><span class="section"><a href="reference.html#header.boost.move.core_hpp">Header &lt;boost/move/core.hpp&gt;</a></span></dt>
35 <dt><span class="section"><a href="reference.html#header.boost.move.default_delete_hpp">Header &lt;boost/move/default_delete.hpp&gt;</a></span></dt>
36 <dt><span class="section"><a href="reference.html#header.boost.move.iterator_hpp">Header &lt;boost/move/iterator.hpp&gt;</a></span></dt>
37 <dt><span class="section"><a href="reference.html#header.boost.move.make_unique_hpp">Header &lt;boost/move/make_unique.hpp&gt;</a></span></dt>
38 <dt><span class="section"><a href="reference.html#header.boost.move.move_hpp">Header &lt;boost/move/move.hpp&gt;</a></span></dt>
39 <dt><span class="section"><a href="reference.html#header.boost.move.algo.move_hpp">Header &lt;boost/move/algo/move.hpp&gt;</a></span></dt>
40 <dt><span class="section"><a href="reference.html#header.boost.move.traits_hpp">Header &lt;boost/move/traits.hpp&gt;</a></span></dt>
41 <dt><span class="section"><a href="reference.html#header.boost.move.unique_ptr_hpp">Header &lt;boost/move/unique_ptr.hpp&gt;</a></span></dt>
42 <dt><span class="section"><a href="reference.html#header.boost.move.utility_hpp">Header &lt;boost/move/utility.hpp&gt;</a></span></dt>
43 <dt><span class="section"><a href="reference.html#header.boost.move.utility_core_hpp">Header &lt;boost/move/utility_core.hpp&gt;</a></span></dt>
44 </dl></div>
45 <div class="section">
46 <div class="titlepage"><div><div><h3 class="title">
47 <a name="header.boost.move.adl_move_swap_hpp"></a>Header &lt;<a href="../../../boost/move/adl_move_swap.hpp" target="_top">boost/move/adl_move_swap.hpp</a>&gt;</h3></div></div></div>
48 <pre class="synopsis"><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span>
49   <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="../boost/adl_move_swap.html" title="Function template adl_move_swap"><span class="identifier">adl_move_swap</span></a><span class="special">(</span><span class="identifier">T</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">T</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
50   <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> ForwardIt1<span class="special">,</span> <span class="keyword">typename</span> ForwardIt2<span class="special">&gt;</span> 
51     <span class="identifier">ForwardIt2</span> <a class="link" href="../boost/adl_move_swap_ranges.html" title="Function template adl_move_swap_ranges"><span class="identifier">adl_move_swap_ranges</span></a><span class="special">(</span><span class="identifier">ForwardIt1</span><span class="special">,</span> <span class="identifier">ForwardIt1</span><span class="special">,</span> <span class="identifier">ForwardIt2</span><span class="special">)</span><span class="special">;</span>
52   <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> BidirIt1<span class="special">,</span> <span class="keyword">typename</span> BidirIt2<span class="special">&gt;</span> 
53     <span class="identifier">BidirIt2</span> <a name="boost.adl_move_swap_idp664311792"></a><span class="identifier">adl_move_swap_ranges_backward</span><span class="special">(</span><span class="identifier">BidirIt1</span> first1<span class="special">,</span> <span class="identifier">BidirIt1</span> last1<span class="special">,</span> 
54                                            <span class="identifier">BidirIt2</span> last2<span class="special">)</span><span class="special">;</span>
55 <span class="special">}</span></pre>
56 </div>
57 <div class="section">
58 <div class="titlepage"><div><div><h3 class="title">
59 <a name="header.boost.move.algo.adaptive_merge_hpp"></a>Header &lt;<a href="../../../boost/move/algo/adaptive_merge.hpp" target="_top">boost/move/algo/adaptive_merge.hpp</a>&gt;</h3></div></div></div>
60 <pre class="synopsis"><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span>
61   <span class="keyword">namespace</span> <span class="identifier">movelib</span> <span class="special">{</span>
62     <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> RandIt<span class="special">,</span> <span class="keyword">typename</span> Compare<span class="special">&gt;</span> 
63       <span class="keyword">void</span> <a class="link" href="../boost/movelib/adaptive_merge.html" title="Function template adaptive_merge"><span class="identifier">adaptive_merge</span></a><span class="special">(</span><span class="identifier">RandIt</span><span class="special">,</span> <span class="identifier">RandIt</span><span class="special">,</span> <span class="identifier">RandIt</span><span class="special">,</span> <span class="identifier">Compare</span><span class="special">,</span> 
64                           <span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span> <span class="identifier">RandIt</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">value_type</span> <span class="special">*</span> <span class="special">=</span> <span class="number">0</span><span class="special">,</span> 
65                           <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">=</span> <span class="number">0</span><span class="special">)</span><span class="special">;</span>
66   <span class="special">}</span>
67 <span class="special">}</span></pre>
68 </div>
69 <div class="section">
70 <div class="titlepage"><div><div><h3 class="title">
71 <a name="header.boost.move.algo.adaptive_sort_hpp"></a>Header &lt;<a href="../../../boost/move/algo/adaptive_sort.hpp" target="_top">boost/move/algo/adaptive_sort.hpp</a>&gt;</h3></div></div></div>
72 <pre class="synopsis"><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span>
73   <span class="keyword">namespace</span> <span class="identifier">movelib</span> <span class="special">{</span>
74     <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> RandIt<span class="special">,</span> <span class="keyword">typename</span> Compare<span class="special">&gt;</span> 
75       <span class="keyword">void</span> <a class="link" href="../boost/movelib/adaptive_sort.html" title="Function template adaptive_sort"><span class="identifier">adaptive_sort</span></a><span class="special">(</span><span class="identifier">RandIt</span><span class="special">,</span> <span class="identifier">RandIt</span><span class="special">,</span> <span class="identifier">Compare</span><span class="special">,</span> 
76                          <span class="keyword">typename</span> <span class="identifier">iterator_traits</span><span class="special">&lt;</span> <span class="identifier">RandIt</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">value_type</span> <span class="special">*</span> <span class="special">=</span> <span class="number">0</span><span class="special">,</span> 
77                          <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="special">=</span> <span class="number">0</span><span class="special">)</span><span class="special">;</span>
78   <span class="special">}</span>
79 <span class="special">}</span></pre>
80 </div>
81 <div class="section">
82 <div class="titlepage"><div><div><h3 class="title">
83 <a name="header.boost.move.algorithm_hpp"></a>Header &lt;<a href="../../../boost/move/algorithm.hpp" target="_top">boost/move/algorithm.hpp</a>&gt;</h3></div></div></div>
84 <pre class="synopsis"><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span>
85   <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> I<span class="special">,</span> <span class="keyword">typename</span> F<span class="special">&gt;</span> 
86     <span class="identifier">F</span> <a name="boost.uninitialized_idp664355120"></a><span class="identifier">uninitialized_copy_or_move</span><span class="special">(</span><span class="identifier">I</span> f<span class="special">,</span> <span class="identifier">I</span> l<span class="special">,</span> <span class="identifier">F</span> r<span class="special">,</span> <span class="emphasis"><em><span class="identifier">unspecified</span></em></span> <span class="special">=</span> <span class="number">0</span><span class="special">)</span><span class="special">;</span>
87   <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> I<span class="special">,</span> <span class="keyword">typename</span> F<span class="special">&gt;</span> 
88     <span class="identifier">F</span> <a name="boost.copy_or_move_idp664360560"></a><span class="identifier">copy_or_move</span><span class="special">(</span><span class="identifier">I</span> f<span class="special">,</span> <span class="identifier">I</span> l<span class="special">,</span> <span class="identifier">F</span> r<span class="special">,</span> <span class="emphasis"><em><span class="identifier">unspecified</span></em></span> <span class="special">=</span> <span class="number">0</span><span class="special">)</span><span class="special">;</span>
89   <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> I<span class="special">,</span> <span class="keyword">typename</span> F<span class="special">&gt;</span> <span class="identifier">F</span> <a class="link" href="../boost/uninitialized_idp664365984.html" title="Function template uninitialized_copy_or_move"><span class="identifier">uninitialized_copy_or_move</span></a><span class="special">(</span><span class="identifier">I</span><span class="special">,</span> <span class="identifier">I</span><span class="special">,</span> <span class="identifier">F</span><span class="special">)</span><span class="special">;</span>
90   <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> I<span class="special">,</span> <span class="keyword">typename</span> F<span class="special">&gt;</span> <span class="identifier">F</span> <a class="link" href="../boost/copy_or_move_idp664375024.html" title="Function template copy_or_move"><span class="identifier">copy_or_move</span></a><span class="special">(</span><span class="identifier">I</span><span class="special">,</span> <span class="identifier">I</span><span class="special">,</span> <span class="identifier">F</span><span class="special">)</span><span class="special">;</span>
91 <span class="special">}</span></pre>
92 </div>
93 <div class="section">
94 <div class="titlepage"><div><div><h3 class="title">
95 <a name="header.boost.move.core_hpp"></a>Header &lt;<a href="../../../boost/move/core.hpp" target="_top">boost/move/core.hpp</a>&gt;</h3></div></div></div>
96 <p>This header implements macros to define movable classes and move-aware functions </p>
97 <pre class="synopsis">
98
99 <a class="link" href="../BOOST_MOVABLE_BUT_NOT_COPYABLE.html" title="Macro BOOST_MOVABLE_BUT_NOT_COPYABLE">BOOST_MOVABLE_BUT_NOT_COPYABLE</a>(TYPE)
100 <a class="link" href="../BOOST_COPYABLE_AND_MOVABLE.html" title="Macro BOOST_COPYABLE_AND_MOVABLE">BOOST_COPYABLE_AND_MOVABLE</a>(TYPE)
101 <a class="link" href="../BOOST_RV_REF.html" title="Macro BOOST_RV_REF">BOOST_RV_REF</a>(TYPE)
102 <a class="link" href="../BOOST_RV_REF_BEG.html" title="Macro BOOST_RV_REF_BEG">BOOST_RV_REF_BEG</a>
103 <a class="link" href="../BOOST_RV_REF_END.html" title="Macro BOOST_RV_REF_END">BOOST_RV_REF_END</a>
104 <a class="link" href="../BOOST_RV_REF_BEG_IF_CXX11.html" title="Macro BOOST_RV_REF_BEG_IF_CXX11">BOOST_RV_REF_BEG_IF_CXX11</a>
105 <a class="link" href="../BOOST_RV_REF_END_IF_CXX11.html" title="Macro BOOST_RV_REF_END_IF_CXX11">BOOST_RV_REF_END_IF_CXX11</a>
106 <a class="link" href="../BOOST_COPY_ASSIGN_REF.html" title="Macro BOOST_COPY_ASSIGN_REF">BOOST_COPY_ASSIGN_REF</a>(TYPE)
107 <a class="link" href="../BOOST_FWD_REF.html" title="Macro BOOST_FWD_REF">BOOST_FWD_REF</a>(TYPE)
108 <a class="link" href="../BOOST_MOVE_RET.html" title="Macro BOOST_MOVE_RET">BOOST_MOVE_RET</a>(RET_TYPE, REF)
109 <a class="link" href="../BOOST_MOVE_BASE.html" title="Macro BOOST_MOVE_BASE">BOOST_MOVE_BASE</a>(BASE_TYPE, ARG)</pre>
110 <pre class="synopsis"><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span>
111   <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/has_move_emulation_enabled.html" title="Struct template has_move_emulation_enabled">has_move_emulation_enabled</a><span class="special">;</span>
112   <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/has_move_emul_idp664388752.html" title="Struct template has_move_emulation_disabled">has_move_emulation_disabled</a><span class="special">;</span>
113 <span class="special">}</span></pre>
114 </div>
115 <div class="section">
116 <div class="titlepage"><div><div><h3 class="title">
117 <a name="header.boost.move.default_delete_hpp"></a>Header &lt;<a href="../../../boost/move/default_delete.hpp" target="_top">boost/move/default_delete.hpp</a>&gt;</h3></div></div></div>
118 <p>Describes the default deleter (destruction policy) of <code class="computeroutput">unique_ptr</code>: <code class="computeroutput">default_delete</code>. </p>
119 <pre class="synopsis"><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span>
120   <span class="keyword">namespace</span> <span class="identifier">movelib</span> <span class="special">{</span>
121     <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/movelib/default_delete.html" title="Struct template default_delete">default_delete</a><span class="special">;</span>
122   <span class="special">}</span>
123 <span class="special">}</span></pre>
124 </div>
125 <div class="section">
126 <div class="titlepage"><div><div><h3 class="title">
127 <a name="header.boost.move.iterator_hpp"></a>Header &lt;<a href="../../../boost/move/iterator.hpp" target="_top">boost/move/iterator.hpp</a>&gt;</h3></div></div></div>
128 <pre class="synopsis"><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span>
129   <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> It<span class="special">&gt;</span> <span class="keyword">class</span> <a class="link" href="../boost/move_iterator.html" title="Class template move_iterator">move_iterator</a><span class="special">;</span>
130   <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> C<span class="special">&gt;</span> <span class="keyword">class</span> <a class="link" href="../boost/back_move_insert_iterator.html" title="Class template back_move_insert_iterator">back_move_insert_iterator</a><span class="special">;</span>
131   <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> C<span class="special">&gt;</span> <span class="keyword">class</span> <a class="link" href="../boost/front_move_insert_iterator.html" title="Class template front_move_insert_iterator">front_move_insert_iterator</a><span class="special">;</span>
132   <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> C<span class="special">&gt;</span> <span class="keyword">class</span> <a class="link" href="../boost/move_insert_iterator.html" title="Class template move_insert_iterator">move_insert_iterator</a><span class="special">;</span>
133   <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> It<span class="special">&gt;</span> <a class="link" href="../boost/move_iterator.html" title="Class template move_iterator">move_iterator</a><span class="special">&lt;</span> <span class="identifier">It</span> <span class="special">&gt;</span> <a class="link" href="../boost/make_move_iterator.html" title="Function template make_move_iterator"><span class="identifier">make_move_iterator</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">It</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
134   <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> C<span class="special">&gt;</span> <a class="link" href="../boost/back_move_insert_iterator.html" title="Class template back_move_insert_iterator">back_move_insert_iterator</a><span class="special">&lt;</span> <span class="identifier">C</span> <span class="special">&gt;</span> <a class="link" href="../boost/back_move_inserter.html" title="Function template back_move_inserter"><span class="identifier">back_move_inserter</span></a><span class="special">(</span><span class="identifier">C</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
135   <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> C<span class="special">&gt;</span> 
136     <a class="link" href="../boost/front_move_insert_iterator.html" title="Class template front_move_insert_iterator">front_move_insert_iterator</a><span class="special">&lt;</span> <span class="identifier">C</span> <span class="special">&gt;</span> <a class="link" href="../boost/front_move_inserter.html" title="Function template front_move_inserter"><span class="identifier">front_move_inserter</span></a><span class="special">(</span><span class="identifier">C</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
137   <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> C<span class="special">&gt;</span> 
138     <span class="identifier">move_insert_iterator</span><span class="special">&lt;</span> <span class="identifier">C</span> <span class="special">&gt;</span> <a class="link" href="../boost/move_inserter.html" title="Function template move_inserter"><span class="identifier">move_inserter</span></a><span class="special">(</span><span class="identifier">C</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">C</span><span class="special">::</span><span class="identifier">iterator</span><span class="special">)</span><span class="special">;</span>
139 <span class="special">}</span></pre>
140 </div>
141 <div class="section">
142 <div class="titlepage"><div><div><h3 class="title">
143 <a name="header.boost.move.make_unique_hpp"></a>Header &lt;<a href="../../../boost/move/make_unique.hpp" target="_top">boost/move/make_unique.hpp</a>&gt;</h3></div></div></div>
144 <p>Defines "make_unique" functions, which are factories to create instances of unique_ptr depending on the passed arguments.</p>
145 <p>This header can be a bit heavyweight in C++03 compilers due to the use of the preprocessor library, that's why it's a a separate header from <code class="computeroutput">unique_ptr.hpp</code> </p>
146 <pre class="synopsis"><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span>
147   <span class="keyword">namespace</span> <span class="identifier">movelib</span> <span class="special">{</span>
148     <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">,</span> <span class="keyword">class</span><span class="special">...</span> Args<span class="special">&gt;</span> 
149       <a class="link" href="../boost/movelib/unique_ptr.html" title="Class template unique_ptr">unique_ptr</a><span class="special">&lt;</span> <span class="identifier">T</span> <span class="special">&gt;</span> <a class="link" href="../boost/movelib/make_unique_idp664551360.html" title="Function template make_unique"><span class="identifier">make_unique</span></a><span class="special">(</span><span class="identifier">Args</span> <span class="special">&amp;&amp;</span><span class="special">...</span><span class="special">)</span><span class="special">;</span>
150     <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">,</span> <span class="keyword">class</span><span class="special">...</span> Args<span class="special">&gt;</span> 
151       <a class="link" href="../boost/movelib/unique_ptr.html" title="Class template unique_ptr">unique_ptr</a><span class="special">&lt;</span> <span class="identifier">T</span> <span class="special">&gt;</span> <a class="link" href="../boost/movelib/make_unique_n_idp664557248.html" title="Function template make_unique_nothrow"><span class="identifier">make_unique_nothrow</span></a><span class="special">(</span><span class="identifier">Args</span> <span class="special">&amp;&amp;</span><span class="special">...</span><span class="special">)</span><span class="special">;</span>
152     <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">&gt;</span> <a class="link" href="../boost/movelib/unique_ptr.html" title="Class template unique_ptr">unique_ptr</a><span class="special">&lt;</span> <span class="identifier">T</span> <span class="special">&gt;</span> <a class="link" href="../boost/movelib/make_unique_d_idp664563152.html" title="Function template make_unique_definit"><span class="identifier">make_unique_definit</span></a><span class="special">(</span><span class="special">)</span><span class="special">;</span>
153     <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">&gt;</span> <a class="link" href="../boost/movelib/unique_ptr.html" title="Class template unique_ptr">unique_ptr</a><span class="special">&lt;</span> <span class="identifier">T</span> <span class="special">&gt;</span> <a class="link" href="../boost/movelib/make_unique_n_idp664567488.html" title="Function template make_unique_nothrow_definit"><span class="identifier">make_unique_nothrow_definit</span></a><span class="special">(</span><span class="special">)</span><span class="special">;</span>
154     <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">&gt;</span> <a class="link" href="../boost/movelib/unique_ptr.html" title="Class template unique_ptr">unique_ptr</a><span class="special">&lt;</span> <span class="identifier">T</span> <span class="special">&gt;</span> <a class="link" href="../boost/movelib/make_unique_idp664571856.html" title="Function template make_unique"><span class="identifier">make_unique</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">)</span><span class="special">;</span>
155     <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">&gt;</span> <a class="link" href="../boost/movelib/unique_ptr.html" title="Class template unique_ptr">unique_ptr</a><span class="special">&lt;</span> <span class="identifier">T</span> <span class="special">&gt;</span> <a class="link" href="../boost/movelib/make_unique_n_idp664576928.html" title="Function template make_unique_nothrow"><span class="identifier">make_unique_nothrow</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">)</span><span class="special">;</span>
156     <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">&gt;</span> <a class="link" href="../boost/movelib/unique_ptr.html" title="Class template unique_ptr">unique_ptr</a><span class="special">&lt;</span> <span class="identifier">T</span> <span class="special">&gt;</span> <a class="link" href="../boost/movelib/make_unique_d_idp664582016.html" title="Function template make_unique_definit"><span class="identifier">make_unique_definit</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">)</span><span class="special">;</span>
157     <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">&gt;</span> 
158       <a class="link" href="../boost/movelib/unique_ptr.html" title="Class template unique_ptr">unique_ptr</a><span class="special">&lt;</span> <span class="identifier">T</span> <span class="special">&gt;</span> <a class="link" href="../boost/movelib/make_unique_n_idp664587088.html" title="Function template make_unique_nothrow_definit"><span class="identifier">make_unique_nothrow_definit</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">)</span><span class="special">;</span>
159     <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">,</span> <span class="keyword">class</span><span class="special">...</span> Args<span class="special">&gt;</span> <span class="identifier">unspecified</span> <a class="link" href="../boost/movelib/make_unique_idp664592176.html" title="Function template make_unique"><span class="identifier">make_unique</span></a><span class="special">(</span><span class="identifier">Args</span> <span class="special">&amp;&amp;</span><span class="special">)</span><span class="special">;</span>
160     <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">,</span> <span class="keyword">class</span><span class="special">...</span> Args<span class="special">&gt;</span> 
161       <span class="identifier">unspecified</span> <a class="link" href="../boost/movelib/make_unique_d_idp664596464.html" title="Function template make_unique_definit"><span class="identifier">make_unique_definit</span></a><span class="special">(</span><span class="identifier">Args</span> <span class="special">&amp;&amp;</span><span class="special">)</span><span class="special">;</span>
162     <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">,</span> <span class="keyword">class</span><span class="special">...</span> Args<span class="special">&gt;</span> 
163       <span class="identifier">unspecified</span> <a class="link" href="../boost/movelib/make_unique_n_idp664600752.html" title="Function template make_unique_nothrow"><span class="identifier">make_unique_nothrow</span></a><span class="special">(</span><span class="identifier">Args</span> <span class="special">&amp;&amp;</span><span class="special">)</span><span class="special">;</span>
164     <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">,</span> <span class="keyword">class</span><span class="special">...</span> Args<span class="special">&gt;</span> 
165       <span class="identifier">unspecified</span> <a class="link" href="../boost/movelib/make_unique_n_idp664605040.html" title="Function template make_unique_nothrow_definit"><span class="identifier">make_unique_nothrow_definit</span></a><span class="special">(</span><span class="identifier">Args</span> <span class="special">&amp;&amp;</span><span class="special">)</span><span class="special">;</span>
166   <span class="special">}</span>
167 <span class="special">}</span></pre>
168 </div>
169 <div class="section">
170 <div class="titlepage"><div><div><h3 class="title">
171 <a name="header.boost.move.move_hpp"></a>Header &lt;<a href="../../../boost/move/move.hpp" target="_top">boost/move/move.hpp</a>&gt;</h3></div></div></div>
172 <p>A general library header that includes the rest of top-level headers. </p>
173 </div>
174 <div class="section">
175 <div class="titlepage"><div><div><h3 class="title">
176 <a name="header.boost.move.algo.move_hpp"></a>Header &lt;<a href="../../../boost/move/algo/move.hpp" target="_top">boost/move/algo/move.hpp</a>&gt;</h3></div></div></div>
177 <pre class="synopsis"><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span>
178   <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> I<span class="special">,</span> <span class="keyword">typename</span> O<span class="special">&gt;</span> <span class="identifier">O</span> <a class="link" href="../boost/move_idp664612016.html" title="Function template move"><span class="identifier">move</span></a><span class="special">(</span><span class="identifier">I</span><span class="special">,</span> <span class="identifier">I</span><span class="special">,</span> <span class="identifier">O</span><span class="special">)</span><span class="special">;</span>
179   <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> I<span class="special">,</span> <span class="keyword">typename</span> O<span class="special">&gt;</span> <span class="identifier">O</span> <a class="link" href="../boost/move_backward.html" title="Function template move_backward"><span class="identifier">move_backward</span></a><span class="special">(</span><span class="identifier">I</span><span class="special">,</span> <span class="identifier">I</span><span class="special">,</span> <span class="identifier">O</span><span class="special">)</span><span class="special">;</span>
180   <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> I<span class="special">,</span> <span class="keyword">typename</span> F<span class="special">&gt;</span> <span class="identifier">F</span> <a class="link" href="../boost/uninitialized_move.html" title="Function template uninitialized_move"><span class="identifier">uninitialized_move</span></a><span class="special">(</span><span class="identifier">I</span><span class="special">,</span> <span class="identifier">I</span><span class="special">,</span> <span class="identifier">F</span><span class="special">)</span><span class="special">;</span>
181 <span class="special">}</span></pre>
182 </div>
183 <div class="section">
184 <div class="titlepage"><div><div><h3 class="title">
185 <a name="header.boost.move.traits_hpp"></a>Header &lt;<a href="../../../boost/move/traits.hpp" target="_top">boost/move/traits.hpp</a>&gt;</h3></div></div></div>
186 <pre class="synopsis"><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span>
187   <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/has_trivial_d_idp664636896.html" title="Struct template has_trivial_destructor_after_move">has_trivial_destructor_after_move</a><span class="special">;</span>
188   <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/has_nothrow_move.html" title="Struct template has_nothrow_move">has_nothrow_move</a><span class="special">;</span>
189 <span class="special">}</span></pre>
190 </div>
191 <div class="section">
192 <div class="titlepage"><div><div><h3 class="title">
193 <a name="header.boost.move.unique_ptr_hpp"></a>Header &lt;<a href="../../../boost/move/unique_ptr.hpp" target="_top">boost/move/unique_ptr.hpp</a>&gt;</h3></div></div></div>
194 <p>Describes the smart pointer unique_ptr, a drop-in replacement for std::unique_ptr, usable also from C++03 compilers.</p>
195 <p>Main differences from std::unique_ptr to avoid heavy dependencies, specially in C++03 compilers:</p>
196 <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
197 <li class="listitem"><p><code class="computeroutput">operator &lt; </code> uses pointer <code class="computeroutput">operator &lt; </code>instead of <code class="computeroutput">std::less&lt;common_type&gt;</code>. This avoids dependencies on <code class="computeroutput">std::common_type</code> and <code class="computeroutput">std::less</code> (<code class="computeroutput">&lt;type_traits&gt;/&lt;functional&gt;</code> headers). In C++03 this avoid pulling Boost.Typeof and other cascading dependencies. As in all Boost platforms <code class="computeroutput">operator &lt;</code> on raw pointers and other smart pointers provides strict weak ordering in practice this should not be a problem for users.</p></li>
198 <li class="listitem"><p>assignable from literal 0 for compilers without nullptr</p></li>
199 <li class="listitem"><p><code class="computeroutput">unique_ptr&lt;T[]&gt;</code> is constructible and assignable from <code class="computeroutput">unique_ptr&lt;U[]&gt;</code> if cv-less T and cv-less U are the same type and T is more CV qualified than U. </p></li>
200 </ul></div>
201 <p>
202 </p>
203 <pre class="synopsis"><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span>
204   <span class="keyword">namespace</span> <span class="identifier">movelib</span> <span class="special">{</span>
205     <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">,</span> <span class="keyword">typename</span> D <span class="special">=</span> <a class="link" href="../boost/movelib/default_delete.html" title="Struct template default_delete">default_delete</a><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&gt;</span> <span class="keyword">class</span> <a class="link" href="../boost/movelib/unique_ptr.html" title="Class template unique_ptr">unique_ptr</a><span class="special">;</span>
206     <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">,</span> <span class="keyword">typename</span> D<span class="special">&gt;</span> 
207       <span class="keyword">void</span> <a class="link" href="../boost/movelib/swap_idp664836608.html" title="Function template swap"><span class="identifier">swap</span></a><span class="special">(</span><a class="link" href="../boost/movelib/unique_ptr.html" title="Class template unique_ptr">unique_ptr</a><span class="special">&lt;</span> <span class="identifier">T</span><span class="special">,</span> <span class="identifier">D</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">,</span> <a class="link" href="../boost/movelib/unique_ptr.html" title="Class template unique_ptr">unique_ptr</a><span class="special">&lt;</span> <span class="identifier">T</span><span class="special">,</span> <span class="identifier">D</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
208     <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T1<span class="special">,</span> <span class="keyword">typename</span> D1<span class="special">,</span> <span class="keyword">typename</span> T2<span class="special">,</span> <span class="keyword">typename</span> D2<span class="special">&gt;</span> 
209       <span class="keyword">bool</span> <a class="link" href="../boost/movelib/operator___idp664842240.html" title="Function template operator=="><span class="keyword">operator</span><span class="special">==</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="../boost/movelib/unique_ptr.html" title="Class template unique_ptr">unique_ptr</a><span class="special">&lt;</span> <span class="identifier">T1</span><span class="special">,</span> <span class="identifier">D1</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">,</span> 
210                       <span class="keyword">const</span> <a class="link" href="../boost/movelib/unique_ptr.html" title="Class template unique_ptr">unique_ptr</a><span class="special">&lt;</span> <span class="identifier">T2</span><span class="special">,</span> <span class="identifier">D2</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
211     <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T1<span class="special">,</span> <span class="keyword">typename</span> D1<span class="special">,</span> <span class="keyword">typename</span> T2<span class="special">,</span> <span class="keyword">typename</span> D2<span class="special">&gt;</span> 
212       <span class="keyword">bool</span> <a class="link" href="../boost/movelib/operator___idp664849312.html" title="Function template operator!="><span class="keyword">operator</span><span class="special">!=</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="../boost/movelib/unique_ptr.html" title="Class template unique_ptr">unique_ptr</a><span class="special">&lt;</span> <span class="identifier">T1</span><span class="special">,</span> <span class="identifier">D1</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">,</span> 
213                       <span class="keyword">const</span> <a class="link" href="../boost/movelib/unique_ptr.html" title="Class template unique_ptr">unique_ptr</a><span class="special">&lt;</span> <span class="identifier">T2</span><span class="special">,</span> <span class="identifier">D2</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
214     <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T1<span class="special">,</span> <span class="keyword">typename</span> D1<span class="special">,</span> <span class="keyword">typename</span> T2<span class="special">,</span> <span class="keyword">typename</span> D2<span class="special">&gt;</span> 
215       <span class="keyword">bool</span> <a class="link" href="../boost/movelib/operator_idp664856384.html" title="Function template operator&lt;"><span class="keyword">operator</span><span class="special">&lt;</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="../boost/movelib/unique_ptr.html" title="Class template unique_ptr">unique_ptr</a><span class="special">&lt;</span> <span class="identifier">T1</span><span class="special">,</span> <span class="identifier">D1</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">,</span> 
216                      <span class="keyword">const</span> <a class="link" href="../boost/movelib/unique_ptr.html" title="Class template unique_ptr">unique_ptr</a><span class="special">&lt;</span> <span class="identifier">T2</span><span class="special">,</span> <span class="identifier">D2</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
217     <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T1<span class="special">,</span> <span class="keyword">typename</span> D1<span class="special">,</span> <span class="keyword">typename</span> T2<span class="special">,</span> <span class="keyword">typename</span> D2<span class="special">&gt;</span> 
218       <span class="keyword">bool</span> <a class="link" href="../boost/movelib/operator___idp664863904.html" title="Function template operator&lt;="><span class="keyword">operator</span><span class="special">&lt;=</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="../boost/movelib/unique_ptr.html" title="Class template unique_ptr">unique_ptr</a><span class="special">&lt;</span> <span class="identifier">T1</span><span class="special">,</span> <span class="identifier">D1</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">,</span> 
219                       <span class="keyword">const</span> <a class="link" href="../boost/movelib/unique_ptr.html" title="Class template unique_ptr">unique_ptr</a><span class="special">&lt;</span> <span class="identifier">T2</span><span class="special">,</span> <span class="identifier">D2</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
220     <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T1<span class="special">,</span> <span class="keyword">typename</span> D1<span class="special">,</span> <span class="keyword">typename</span> T2<span class="special">,</span> <span class="keyword">typename</span> D2<span class="special">&gt;</span> 
221       <span class="keyword">bool</span> <a class="link" href="../boost/movelib/operator_idp664870528.html" title="Function template operator&gt;"><span class="keyword">operator</span><span class="special">&gt;</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="../boost/movelib/unique_ptr.html" title="Class template unique_ptr">unique_ptr</a><span class="special">&lt;</span> <span class="identifier">T1</span><span class="special">,</span> <span class="identifier">D1</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">,</span> 
222                      <span class="keyword">const</span> <a class="link" href="../boost/movelib/unique_ptr.html" title="Class template unique_ptr">unique_ptr</a><span class="special">&lt;</span> <span class="identifier">T2</span><span class="special">,</span> <span class="identifier">D2</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
223     <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T1<span class="special">,</span> <span class="keyword">typename</span> D1<span class="special">,</span> <span class="keyword">typename</span> T2<span class="special">,</span> <span class="keyword">typename</span> D2<span class="special">&gt;</span> 
224       <span class="keyword">bool</span> <a class="link" href="../boost/movelib/operator___idp664877152.html" title="Function template operator&gt;="><span class="keyword">operator</span><span class="special">&gt;=</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="../boost/movelib/unique_ptr.html" title="Class template unique_ptr">unique_ptr</a><span class="special">&lt;</span> <span class="identifier">T1</span><span class="special">,</span> <span class="identifier">D1</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">,</span> 
225                       <span class="keyword">const</span> <a class="link" href="../boost/movelib/unique_ptr.html" title="Class template unique_ptr">unique_ptr</a><span class="special">&lt;</span> <span class="identifier">T2</span><span class="special">,</span> <span class="identifier">D2</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
226     <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">,</span> <span class="keyword">typename</span> D<span class="special">&gt;</span> 
227       <span class="keyword">bool</span> <a class="link" href="../boost/movelib/operator___idp664883776.html" title="Function template operator=="><span class="keyword">operator</span><span class="special">==</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="../boost/movelib/unique_ptr.html" title="Class template unique_ptr">unique_ptr</a><span class="special">&lt;</span> <span class="identifier">T</span><span class="special">,</span> <span class="identifier">D</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">nullptr_t</span><span class="special">)</span><span class="special">;</span>
228     <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">,</span> <span class="keyword">typename</span> D<span class="special">&gt;</span> 
229       <span class="keyword">bool</span> <a class="link" href="../boost/movelib/operator___idp664888832.html" title="Function template operator=="><span class="keyword">operator</span><span class="special">==</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">nullptr_t</span><span class="special">,</span> <span class="keyword">const</span> <a class="link" href="../boost/movelib/unique_ptr.html" title="Class template unique_ptr">unique_ptr</a><span class="special">&lt;</span> <span class="identifier">T</span><span class="special">,</span> <span class="identifier">D</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
230     <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">,</span> <span class="keyword">typename</span> D<span class="special">&gt;</span> 
231       <span class="keyword">bool</span> <a class="link" href="../boost/movelib/operator___idp664893888.html" title="Function template operator!="><span class="keyword">operator</span><span class="special">!=</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="../boost/movelib/unique_ptr.html" title="Class template unique_ptr">unique_ptr</a><span class="special">&lt;</span> <span class="identifier">T</span><span class="special">,</span> <span class="identifier">D</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">nullptr_t</span><span class="special">)</span><span class="special">;</span>
232     <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">,</span> <span class="keyword">typename</span> D<span class="special">&gt;</span> 
233       <span class="keyword">bool</span> <a class="link" href="../boost/movelib/operator___idp664898944.html" title="Function template operator!="><span class="keyword">operator</span><span class="special">!=</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">nullptr_t</span><span class="special">,</span> <span class="keyword">const</span> <a class="link" href="../boost/movelib/unique_ptr.html" title="Class template unique_ptr">unique_ptr</a><span class="special">&lt;</span> <span class="identifier">T</span><span class="special">,</span> <span class="identifier">D</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
234     <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">,</span> <span class="keyword">typename</span> D<span class="special">&gt;</span> 
235       <span class="keyword">bool</span> <a class="link" href="../boost/movelib/operator_idp664904000.html" title="Function template operator&lt;"><span class="keyword">operator</span><span class="special">&lt;</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="../boost/movelib/unique_ptr.html" title="Class template unique_ptr">unique_ptr</a><span class="special">&lt;</span> <span class="identifier">T</span><span class="special">,</span> <span class="identifier">D</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">nullptr_t</span><span class="special">)</span><span class="special">;</span>
236     <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">,</span> <span class="keyword">typename</span> D<span class="special">&gt;</span> 
237       <span class="keyword">bool</span> <a class="link" href="../boost/movelib/operator_idp664910864.html" title="Function template operator&lt;"><span class="keyword">operator</span><span class="special">&lt;</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">nullptr_t</span><span class="special">,</span> <span class="keyword">const</span> <a class="link" href="../boost/movelib/unique_ptr.html" title="Class template unique_ptr">unique_ptr</a><span class="special">&lt;</span> <span class="identifier">T</span><span class="special">,</span> <span class="identifier">D</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
238     <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">,</span> <span class="keyword">typename</span> D<span class="special">&gt;</span> 
239       <span class="keyword">bool</span> <a class="link" href="../boost/movelib/operator_idp664917728.html" title="Function template operator&gt;"><span class="keyword">operator</span><span class="special">&gt;</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="../boost/movelib/unique_ptr.html" title="Class template unique_ptr">unique_ptr</a><span class="special">&lt;</span> <span class="identifier">T</span><span class="special">,</span> <span class="identifier">D</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">nullptr_t</span><span class="special">)</span><span class="special">;</span>
240     <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">,</span> <span class="keyword">typename</span> D<span class="special">&gt;</span> 
241       <span class="keyword">bool</span> <a class="link" href="../boost/movelib/operator_idp664923232.html" title="Function template operator&gt;"><span class="keyword">operator</span><span class="special">&gt;</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">nullptr_t</span><span class="special">,</span> <span class="keyword">const</span> <a class="link" href="../boost/movelib/unique_ptr.html" title="Class template unique_ptr">unique_ptr</a><span class="special">&lt;</span> <span class="identifier">T</span><span class="special">,</span> <span class="identifier">D</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
242     <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">,</span> <span class="keyword">typename</span> D<span class="special">&gt;</span> 
243       <span class="keyword">bool</span> <a class="link" href="../boost/movelib/operator___idp664928736.html" title="Function template operator&lt;="><span class="keyword">operator</span><span class="special">&lt;=</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="../boost/movelib/unique_ptr.html" title="Class template unique_ptr">unique_ptr</a><span class="special">&lt;</span> <span class="identifier">T</span><span class="special">,</span> <span class="identifier">D</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">nullptr_t</span><span class="special">)</span><span class="special">;</span>
244     <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">,</span> <span class="keyword">typename</span> D<span class="special">&gt;</span> 
245       <span class="keyword">bool</span> <a class="link" href="../boost/movelib/operator___idp664934240.html" title="Function template operator&lt;="><span class="keyword">operator</span><span class="special">&lt;=</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">nullptr_t</span><span class="special">,</span> <span class="keyword">const</span> <a class="link" href="../boost/movelib/unique_ptr.html" title="Class template unique_ptr">unique_ptr</a><span class="special">&lt;</span> <span class="identifier">T</span><span class="special">,</span> <span class="identifier">D</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
246     <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">,</span> <span class="keyword">typename</span> D<span class="special">&gt;</span> 
247       <span class="keyword">bool</span> <a class="link" href="../boost/movelib/operator___idp664939744.html" title="Function template operator&gt;="><span class="keyword">operator</span><span class="special">&gt;=</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="../boost/movelib/unique_ptr.html" title="Class template unique_ptr">unique_ptr</a><span class="special">&lt;</span> <span class="identifier">T</span><span class="special">,</span> <span class="identifier">D</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">nullptr_t</span><span class="special">)</span><span class="special">;</span>
248     <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">,</span> <span class="keyword">typename</span> D<span class="special">&gt;</span> 
249       <span class="keyword">bool</span> <a class="link" href="../boost/movelib/operator___idp664945248.html" title="Function template operator&gt;="><span class="keyword">operator</span><span class="special">&gt;=</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">nullptr_t</span><span class="special">,</span> <span class="keyword">const</span> <a class="link" href="../boost/movelib/unique_ptr.html" title="Class template unique_ptr">unique_ptr</a><span class="special">&lt;</span> <span class="identifier">T</span><span class="special">,</span> <span class="identifier">D</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
250   <span class="special">}</span>
251 <span class="special">}</span></pre>
252 </div>
253 <div class="section">
254 <div class="titlepage"><div><div><h3 class="title">
255 <a name="header.boost.move.utility_hpp"></a>Header &lt;<a href="../../../boost/move/utility.hpp" target="_top">boost/move/utility.hpp</a>&gt;</h3></div></div></div>
256 <p>This header includes core utilities from <code class="computeroutput">&lt;boost/move/utility_core.hpp&gt;</code> and defines some more advanced utilities such as: </p>
257 <pre class="synopsis"><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span>
258   <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">&gt;</span> 
259     <span class="identifier">rvalue_reference_or_const_lvalue_reference</span> 
260     <a class="link" href="../boost/move_if_noexcept.html" title="Function template move_if_noexcept"><span class="identifier">move_if_noexcept</span></a><span class="special">(</span><span class="identifier">input_reference</span><span class="special">)</span><span class="special">;</span>
261 <span class="special">}</span></pre>
262 </div>
263 <div class="section">
264 <div class="titlepage"><div><div><h3 class="title">
265 <a name="header.boost.move.utility_core_hpp"></a>Header &lt;<a href="../../../boost/move/utility_core.hpp" target="_top">boost/move/utility_core.hpp</a>&gt;</h3></div></div></div>
266 <p>This header defines core utilities to ease the development of move-aware functions. This header minimizes dependencies from other libraries. </p>
267 <pre class="synopsis"><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span>
268   <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/enable_move_u_idp664958656.html" title="Struct template enable_move_utility_emulation">enable_move_utility_emulation</a><span class="special">;</span>
269   <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">&gt;</span> <span class="identifier">rvalue_reference</span> <a class="link" href="../boost/move_idp664963536.html" title="Function template move"><span class="identifier">move</span></a><span class="special">(</span><span class="identifier">input_reference</span><span class="special">)</span><span class="special">;</span>
270   <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">&gt;</span> <span class="identifier">output_reference</span> <a class="link" href="../boost/forward.html" title="Function template forward"><span class="identifier">forward</span></a><span class="special">(</span><span class="identifier">input_reference</span><span class="special">)</span><span class="special">;</span>
271   <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">&gt;</span> 
272     <span class="identifier">output_reference</span> <a class="link" href="../boost/move_if_not_l_idp664973312.html" title="Function template move_if_not_lvalue_reference"><span class="identifier">move_if_not_lvalue_reference</span></a><span class="special">(</span><span class="identifier">input_reference</span><span class="special">)</span><span class="special">;</span>
273 <span class="special">}</span></pre>
274 </div>
275 </div>
276 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
277 <td align="left"></td>
278 <td align="right"><div class="copyright-footer">Copyright &#169; 2008-2014 Ion Gaztanaga<p>
279         Distributed under the Boost Software License, Version 1.0. (See accompanying
280         file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
281       </p>
282 </div></td>
283 </tr></table>
284 <hr>
285 <div class="spirit-nav">
286 <a accesskey="p" href="release_notes.html"><img src="../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../move.html"><img src="../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../boost/adl_move_swap.html"><img src="../../../doc/src/images/next.png" alt="Next"></a>
287 </div>
288 </body>
289 </html>