diff -ur boost_1_60_0/boost/ptr_container/detail/associative_ptr_container.hpp boost_1_60_0_no_auto/boost/ptr_container/detail/associative_ptr_container.hpp
old
|
new
|
|
103 | 103 | : base_type( first, last, hash, pred, a ) |
104 | 104 | { } |
105 | 105 | |
| 106 | #ifndef BOOST_NO_AUTO_PTR |
106 | 107 | template< class PtrContainer > |
107 | 108 | explicit associative_ptr_container( std::auto_ptr<PtrContainer> r ) |
108 | 109 | : base_type( r ) |
109 | 110 | { } |
| 111 | #endif |
110 | 112 | |
111 | 113 | associative_ptr_container( const associative_ptr_container& r ) |
112 | 114 | : base_type( r.begin(), r.end(), container_type() ) |
… |
… |
|
117 | 119 | : base_type( r.begin(), r.end(), container_type() ) |
118 | 120 | { } |
119 | 121 | |
| 122 | #ifndef BOOST_NO_AUTO_PTR |
120 | 123 | template< class PtrContainer > |
121 | 124 | associative_ptr_container& operator=( std::auto_ptr<PtrContainer> r ) // nothrow |
122 | 125 | { |
123 | 126 | base_type::operator=( r ); |
124 | 127 | return *this; |
125 | 128 | } |
| 129 | #endif |
126 | 130 | |
127 | 131 | associative_ptr_container& operator=( associative_ptr_container r ) // strong |
128 | 132 | { |
diff -ur boost_1_60_0/boost/ptr_container/detail/reversible_ptr_container.hpp boost_1_60_0_no_auto/boost/ptr_container/detail/reversible_ptr_container.hpp
old
|
new
|
|
337 | 337 | : c_( a ) |
338 | 338 | { } |
339 | 339 | |
| 340 | #ifndef BOOST_NO_AUTO_PTR |
340 | 341 | template< class PtrContainer > |
341 | 342 | explicit reversible_ptr_container( std::auto_ptr<PtrContainer> clone ) |
342 | 343 | { |
343 | 344 | swap( *clone ); |
344 | 345 | } |
| 346 | #endif |
345 | 347 | |
346 | 348 | reversible_ptr_container( const reversible_ptr_container& r ) |
347 | 349 | { |
… |
… |
|
354 | 356 | constructor_impl( r.begin(), r.end(), std::forward_iterator_tag() ); |
355 | 357 | } |
356 | 358 | |
| 359 | #ifndef BOOST_NO_AUTO_PTR |
357 | 360 | template< class PtrContainer > |
358 | 361 | reversible_ptr_container& operator=( std::auto_ptr<PtrContainer> clone ) // nothrow |
359 | 362 | { |
360 | 363 | swap( *clone ); |
361 | 364 | return *this; |
362 | 365 | } |
| 366 | #endif |
363 | 367 | |
364 | 368 | reversible_ptr_container& operator=( reversible_ptr_container r ) // strong |
365 | 369 | { |
… |
… |
|
568 | 572 | return res; |
569 | 573 | } |
570 | 574 | |
| 575 | #ifndef BOOST_NO_AUTO_PTR |
571 | 576 | template< class U > |
572 | 577 | iterator insert( iterator before, std::auto_ptr<U> x ) |
573 | 578 | { |
574 | 579 | return insert( before, x.release() ); |
575 | 580 | } |
576 | | |
| 581 | #endif |
577 | 582 | iterator erase( iterator x ) // nothrow |
578 | 583 | { |
579 | 584 | BOOST_ASSERT( !empty() ); |
… |
… |
|
632 | 637 | return boost::ptr_container_detail::move( old ); |
633 | 638 | } |
634 | 639 | |
| 640 | #ifndef BOOST_NO_AUTO_PTR |
635 | 641 | template< class U > |
636 | 642 | auto_type replace( iterator where, std::auto_ptr<U> x ) |
637 | 643 | { |
638 | 644 | return replace( where, x.release() ); |
639 | 645 | } |
640 | | |
| 646 | #endif |
641 | 647 | auto_type replace( size_type idx, Ty_* x ) // strong |
642 | 648 | { |
643 | 649 | enforce_null_policy( x, "Null pointer in 'replace()'" ); |
… |
… |
|
652 | 658 | return boost::ptr_container_detail::move( old ); |
653 | 659 | } |
654 | 660 | |
| 661 | #ifndef BOOST_NO_AUTO_PTR |
655 | 662 | template< class U > |
656 | 663 | auto_type replace( size_type idx, std::auto_ptr<U> x ) |
657 | 664 | { |
658 | 665 | return replace( idx, x.release() ); |
659 | 666 | } |
660 | | |
| 667 | #endif |
| 668 | |
661 | 669 | }; // 'reversible_ptr_container' |
662 | 670 | |
663 | 671 | |
… |
… |
|
677 | 685 | // two-phase lookup of template functions |
678 | 686 | // is buggy on most compilers, so we use a macro instead |
679 | 687 | // |
| 688 | |
| 689 | #ifndef BOOST_NO_AUTO_PTR |
| 690 | |
680 | 691 | #define BOOST_PTR_CONTAINER_DEFINE_RELEASE_AND_CLONE( PC, base_type, this_type ) \ |
681 | 692 | explicit PC( std::auto_ptr<this_type> r ) \ |
682 | 693 | : base_type ( r ) { } \ |
… |
… |
|
700 | 711 | return std::auto_ptr<this_type>( new this_type( this->begin(), this->end() ) ); \ |
701 | 712 | } |
702 | 713 | |
| 714 | #else |
| 715 | |
| 716 | #define BOOST_PTR_CONTAINER_DEFINE_RELEASE_AND_CLONE( PC, base_type, this_type ) |
| 717 | |
| 718 | #endif |
| 719 | |
703 | 720 | #define BOOST_PTR_CONTAINER_DEFINE_COPY_CONSTRUCTORS( PC, base_type ) \ |
704 | 721 | \ |
705 | 722 | template< class U > \ |
… |
… |
|
725 | 742 | PC( InputIterator first, InputIterator last, \ |
726 | 743 | const allocator_type& a ) : base_type( first, last, a ) {} |
727 | 744 | |
| 745 | |
728 | 746 | #define BOOST_PTR_CONTAINER_DEFINE_NON_INHERITED_MEMBERS( PC, base_type, this_type ) \ |
729 | 747 | BOOST_PTR_CONTAINER_DEFINE_CONSTRUCTORS( PC, base_type ) \ |
730 | 748 | BOOST_PTR_CONTAINER_DEFINE_RELEASE_AND_CLONE( PC, base_type, this_type ) |
diff -ur boost_1_60_0/boost/ptr_container/ptr_array.hpp boost_1_60_0_no_auto/boost/ptr_container/ptr_array.hpp
old
|
new
|
|
100 | 100 | static_cast<const T*>( &r[i] ) ); |
101 | 101 | } |
102 | 102 | |
| 103 | #ifndef BOOST_NO_AUTO_PTR |
103 | 104 | explicit ptr_array( std::auto_ptr<this_type> r ) |
104 | 105 | : base_class( r ) { } |
| 106 | #endif |
105 | 107 | |
106 | 108 | ptr_array& operator=( ptr_array r ) |
107 | 109 | { |
… |
… |
|
109 | 111 | return *this; |
110 | 112 | } |
111 | 113 | |
| 114 | #ifndef BOOST_NO_AUTO_PTR |
112 | 115 | ptr_array& operator=( std::auto_ptr<this_type> r ) |
113 | 116 | { |
114 | 117 | base_class::operator=(r); |
… |
… |
|
132 | 135 | } |
133 | 136 | return pa; |
134 | 137 | } |
| 138 | #endif |
135 | 139 | |
136 | 140 | private: // hide some members |
137 | 141 | using base_class::insert; |
… |
… |
|
157 | 161 | return boost::ptr_container::move(res); // nothrow |
158 | 162 | } |
159 | 163 | |
| 164 | #ifndef BOOST_NO_AUTO_PTR |
160 | 165 | template< size_t idx, class V > |
161 | 166 | auto_type replace( std::auto_ptr<V> r ) |
162 | 167 | { |
163 | 168 | return replace<idx>( r.release() ); |
164 | 169 | } |
| 170 | #endif |
165 | 171 | |
166 | 172 | auto_type replace( size_t idx, U* r ) // strong |
167 | 173 | { |
… |
… |
|
177 | 183 | return boost::ptr_container::move(res); // nothrow |
178 | 184 | } |
179 | 185 | |
| 186 | #ifndef BOOST_NO_AUTO_PTR |
180 | 187 | template< class V > |
181 | 188 | auto_type replace( size_t idx, std::auto_ptr<V> r ) |
182 | 189 | { |
183 | 190 | return replace( idx, r.release() ); |
184 | 191 | } |
| 192 | #endif |
185 | 193 | |
186 | 194 | using base_class::at; |
187 | 195 | |
diff -ur boost_1_60_0/boost/ptr_container/ptr_circular_buffer.hpp boost_1_60_0_no_auto/boost/ptr_container/ptr_circular_buffer.hpp
old
|
new
|
|
293 | 293 | this->base().push_back( ptr ); |
294 | 294 | } |
295 | 295 | |
| 296 | #ifndef BOOST_NO_AUTO_PTR |
296 | 297 | template< class U > |
297 | 298 | void push_back( std::auto_ptr<U> ptr ) // nothrow |
298 | 299 | { |
299 | 300 | push_back( ptr.release() ); |
300 | 301 | } |
| 302 | #endif |
301 | 303 | |
302 | 304 | void push_front( value_type ptr ) // nothrow |
303 | 305 | { |
… |
… |
|
310 | 312 | this->base().push_front( ptr ); |
311 | 313 | } |
312 | 314 | |
| 315 | #ifndef BOOST_NO_AUTO_PTR |
313 | 316 | template< class U > |
314 | 317 | void push_front( std::auto_ptr<U> ptr ) // nothrow |
315 | 318 | { |
316 | 319 | push_front( ptr.release() ); |
317 | 320 | } |
| 321 | #endif |
318 | 322 | |
319 | 323 | iterator insert( iterator pos, value_type ptr ) // nothrow |
320 | 324 | { |
… |
… |
|
334 | 338 | return this->base().insert( pos.base(), ptr ); |
335 | 339 | } |
336 | 340 | |
| 341 | #ifndef BOOST_NO_AUTO_PTR |
337 | 342 | template< class U > |
338 | 343 | iterator insert( iterator pos, std::auto_ptr<U> ptr ) // nothrow |
339 | 344 | { |
340 | 345 | return insert( pos, ptr.release() ); |
341 | 346 | } |
| 347 | #endif |
342 | 348 | |
343 | 349 | template< class InputIterator > |
344 | 350 | void insert( iterator pos, InputIterator first, InputIterator last ) // basic |
… |
… |
|
377 | 383 | return this->base().rinsert( pos.base(), ptr ); |
378 | 384 | } |
379 | 385 | |
| 386 | #ifndef BOOST_NO_AUTO_PTR |
380 | 387 | template< class U > |
381 | 388 | iterator rinsert( iterator pos, std::auto_ptr<U> ptr ) // nothrow |
382 | 389 | { |
383 | 390 | return rinsert( pos, ptr.release() ); |
384 | 391 | } |
385 | | |
| 392 | #endif |
386 | 393 | |
387 | 394 | template< class InputIterator > |
388 | 395 | void rinsert( iterator pos, InputIterator first, InputIterator last ) // basic |
diff -ur boost_1_60_0/boost/ptr_container/ptr_inserter.hpp boost_1_60_0_no_auto/boost/ptr_container/ptr_inserter.hpp
old
|
new
|
|
73 | 73 | return *this; |
74 | 74 | } |
75 | 75 | |
| 76 | #ifndef BOOST_NO_AUTO_PTR |
76 | 77 | template< class T > |
77 | 78 | ptr_back_insert_iterator& |
78 | 79 | operator=( std::auto_ptr<T> r ) |
… |
… |
|
80 | 81 | container->push_back( r ); |
81 | 82 | return *this; |
82 | 83 | } |
| 84 | #endif |
83 | 85 | |
84 | 86 | ptr_back_insert_iterator& |
85 | 87 | operator=( typename PtrContainer::const_reference r ) |
… |
… |
|
133 | 135 | return *this; |
134 | 136 | } |
135 | 137 | |
| 138 | #ifndef BOOST_NO_AUTO_PTR |
136 | 139 | template< class T > |
137 | 140 | ptr_front_insert_iterator& |
138 | 141 | operator=( std::auto_ptr<T> r ) |
… |
… |
|
140 | 143 | container->push_front( r ); |
141 | 144 | return *this; |
142 | 145 | } |
143 | | |
| 146 | #endif |
| 147 | |
144 | 148 | ptr_front_insert_iterator& |
145 | 149 | operator=( typename PtrContainer::const_reference r ) |
146 | 150 | { |
… |
… |
|
194 | 198 | return *this; |
195 | 199 | } |
196 | 200 | |
| 201 | #ifndef BOOST_NO_AUTO_PTR |
197 | 202 | template< class T > |
198 | 203 | ptr_insert_iterator& |
199 | 204 | operator=( std::auto_ptr<T> r ) |
… |
… |
|
201 | 206 | iter = container->insert( iter, r ); |
202 | 207 | return *this; |
203 | 208 | } |
| 209 | #endif |
204 | 210 | |
205 | 211 | ptr_insert_iterator& |
206 | 212 | operator=( typename PtrContainer::const_reference r ) |
diff -ur boost_1_60_0/boost/ptr_container/ptr_map_adapter.hpp boost_1_60_0_no_auto/boost/ptr_container/ptr_map_adapter.hpp
old
|
new
|
|
260 | 260 | const Allocator& a ) |
261 | 261 | : base_type( first, last, hash, pred, a ) |
262 | 262 | { } |
263 | | |
| 263 | |
| 264 | #ifndef BOOST_NO_AUTO_PTR |
264 | 265 | template< class PtrContainer > |
265 | 266 | explicit ptr_map_adapter_base( std::auto_ptr<PtrContainer> clone ) |
266 | 267 | : base_type( clone ) |
267 | 268 | { } |
268 | | |
| 269 | |
269 | 270 | template< typename PtrContainer > |
270 | 271 | ptr_map_adapter_base& operator=( std::auto_ptr<PtrContainer> clone ) |
271 | 272 | { |
272 | 273 | base_type::operator=( clone ); |
273 | 274 | return *this; |
274 | 275 | } |
275 | | |
| 276 | #endif |
276 | 277 | iterator find( const key_type& x ) |
277 | 278 | { |
278 | 279 | return iterator( this->base().find( x ) ); |
… |
… |
|
357 | 358 | return boost::ptr_container::move( old ); |
358 | 359 | } |
359 | 360 | |
| 361 | #ifndef BOOST_NO_AUTO_PTR |
360 | 362 | template< class U > |
361 | 363 | auto_type replace( iterator where, std::auto_ptr<U> x ) |
362 | 364 | { |
363 | 365 | return replace( where, x.release() ); |
364 | 366 | } |
| 367 | #endif |
365 | 368 | |
366 | 369 | protected: |
367 | 370 | size_type bucket( const key_type& key ) const |
… |
… |
|
487 | 490 | map_basic_clone_and_insert( r.begin(), r.end() ); |
488 | 491 | } |
489 | 492 | |
| 493 | #ifndef BOOST_NO_AUTO_PTR |
490 | 494 | template< class U > |
491 | 495 | ptr_map_adapter( std::auto_ptr<U> r ) : base_type( r ) |
492 | 496 | { } |
493 | | |
| 497 | #endif |
494 | 498 | ptr_map_adapter& operator=( ptr_map_adapter r ) |
495 | 499 | { |
496 | 500 | this->swap( r ); |
497 | 501 | return *this; |
498 | 502 | } |
499 | 503 | |
| 504 | #ifndef BOOST_NO_AUTO_PTR |
500 | 505 | template< class U > |
501 | 506 | ptr_map_adapter& operator=( std::auto_ptr<U> r ) |
502 | 507 | { |
503 | 508 | base_type::operator=( r ); |
504 | 509 | return *this; |
505 | 510 | } |
506 | | |
| 511 | #endif |
507 | 512 | using base_type::release; |
508 | 513 | |
509 | 514 | template< typename InputIterator > |
… |
… |
|
550 | 555 | return insert_impl( key, x ); |
551 | 556 | } |
552 | 557 | |
| 558 | #ifndef BOOST_NO_AUTO_PTR |
553 | 559 | template< class U > |
554 | 560 | std::pair<iterator,bool> insert( const key_type& key, std::auto_ptr<U> x ) |
555 | 561 | { |
556 | 562 | return insert_impl( key, x.release() ); |
557 | 563 | } |
558 | | |
| 564 | #endif |
559 | 565 | template< class F, class S > |
560 | 566 | iterator insert( iterator before, ptr_container_detail::ref_pair<F,S> p ) // strong |
561 | 567 | { |
… |
… |
|
577 | 583 | return insert_impl( before, key, x ); |
578 | 584 | } |
579 | 585 | |
| 586 | #ifndef BOOST_NO_AUTO_PTR |
580 | 587 | template< class U > |
581 | 588 | iterator insert( iterator before, const key_type& key, std::auto_ptr<U> x ) // strong |
582 | 589 | { |
583 | 590 | return insert_impl( before, key, x.release() ); |
584 | 591 | } |
585 | | |
| 592 | #endif |
| 593 | |
586 | 594 | template< class PtrMapAdapter > |
587 | 595 | bool transfer( BOOST_DEDUCED_TYPENAME PtrMapAdapter::iterator object, |
588 | 596 | PtrMapAdapter& from ) // strong |
… |
… |
|
736 | 744 | map_basic_clone_and_insert( r.begin(), r.end() ); |
737 | 745 | } |
738 | 746 | |
| 747 | #ifndef BOOST_NO_AUTO_PTR |
739 | 748 | template< class U > |
740 | 749 | explicit ptr_multimap_adapter( std::auto_ptr<U> r ) : base_type( r ) |
741 | 750 | { } |
| 751 | #endif |
742 | 752 | |
743 | 753 | ptr_multimap_adapter& operator=( ptr_multimap_adapter r ) |
744 | 754 | { |
… |
… |
|
746 | 756 | return *this; |
747 | 757 | } |
748 | 758 | |
| 759 | #ifndef BOOST_NO_AUTO_PTR |
749 | 760 | template< class U > |
750 | 761 | ptr_multimap_adapter& operator=( std::auto_ptr<U> r ) |
751 | 762 | { |
752 | 763 | base_type::operator=( r ); |
753 | 764 | return *this; |
754 | 765 | } |
| 766 | #endif |
755 | 767 | |
756 | 768 | using base_type::release; |
757 | 769 | |
… |
… |
|
799 | 811 | return insert_impl( key, x ); |
800 | 812 | } |
801 | 813 | |
| 814 | #ifndef BOOST_NO_AUTO_PTR |
802 | 815 | template< class U > |
803 | 816 | iterator insert( const key_type& key, std::auto_ptr<U> x ) |
804 | 817 | { |
805 | 818 | return insert_impl( key, x.release() ); |
806 | 819 | } |
807 | | |
| 820 | #endif |
808 | 821 | template< class F, class S > |
809 | 822 | iterator insert( iterator before, ptr_container_detail::ref_pair<F,S> p ) // strong |
810 | 823 | { |
… |
… |
|
820 | 833 | return insert_impl( before, key, x ); |
821 | 834 | } |
822 | 835 | |
| 836 | #ifndef BOOST_NO_AUTO_PTR |
823 | 837 | template< class U > |
824 | 838 | iterator insert( iterator before, const key_type& key, std::auto_ptr<U> x ) // strong |
825 | 839 | { |
826 | 840 | return insert_impl( before, key, x.release() ); |
827 | 841 | } |
| 842 | #endif |
828 | 843 | |
829 | 844 | template< class PtrMapAdapter > |
830 | 845 | void transfer( BOOST_DEDUCED_TYPENAME PtrMapAdapter::iterator object, |
diff -ur boost_1_60_0/boost/ptr_container/ptr_sequence_adapter.hpp boost_1_60_0_no_auto/boost/ptr_container/ptr_sequence_adapter.hpp
old
|
new
|
|
219 | 219 | : base_type( r, tag ) |
220 | 220 | { } |
221 | 221 | |
| 222 | #ifndef BOOST_NO_AUTO_PTR |
222 | 223 | template< class PtrContainer > |
223 | 224 | explicit ptr_sequence_adapter( std::auto_ptr<PtrContainer> clone ) |
224 | 225 | : base_type( clone ) |
225 | 226 | { } |
226 | | |
| 227 | #endif |
227 | 228 | ptr_sequence_adapter& operator=( const ptr_sequence_adapter r ) |
228 | 229 | { |
229 | 230 | this->swap( r ); |
230 | 231 | return *this; |
231 | 232 | } |
232 | 233 | |
| 234 | #ifndef BOOST_NO_AUTO_PTR |
233 | 235 | template< class PtrContainer > |
234 | 236 | ptr_sequence_adapter& operator=( std::auto_ptr<PtrContainer> clone ) |
235 | 237 | { |
236 | 238 | base_type::operator=( clone ); |
237 | 239 | return *this; |
238 | 240 | } |
239 | | |
| 241 | #endif |
240 | 242 | ///////////////////////////////////////////////////////////// |
241 | 243 | // modifiers |
242 | 244 | ///////////////////////////////////////////////////////////// |
… |
… |
|
250 | 252 | ptr.release(); // nothrow |
251 | 253 | } |
252 | 254 | |
| 255 | #ifndef BOOST_NO_AUTO_PTR |
253 | 256 | template< class U > |
254 | 257 | void push_back( std::auto_ptr<U> x ) |
255 | 258 | { |
256 | 259 | push_back( x.release() ); |
257 | 260 | } |
258 | | |
| 261 | #endif |
| 262 | |
259 | 263 | void push_front( value_type x ) |
260 | 264 | { |
261 | 265 | this->enforce_null_policy( x, "Null pointer in 'push_front()'" ); |
… |
… |
|
265 | 269 | ptr.release(); // nothrow |
266 | 270 | } |
267 | 271 | |
| 272 | #ifndef BOOST_NO_AUTO_PTR |
268 | 273 | template< class U > |
269 | 274 | void push_front( std::auto_ptr<U> x ) |
270 | 275 | { |
271 | 276 | push_front( x.release() ); |
272 | 277 | } |
273 | | |
| 278 | #endif |
274 | 279 | auto_type pop_back() |
275 | 280 | { |
276 | 281 | BOOST_ASSERT( !this->empty() && |
diff -ur boost_1_60_0/boost/ptr_container/ptr_set_adapter.hpp boost_1_60_0_no_auto/boost/ptr_container/ptr_set_adapter.hpp
old
|
new
|
|
182 | 182 | : base_type( r ) |
183 | 183 | { } |
184 | 184 | |
| 185 | #ifndef BOOST_NO_AUTO_PTR |
185 | 186 | template< class PtrContainer > |
186 | 187 | explicit ptr_set_adapter_base( std::auto_ptr<PtrContainer> clone ) |
187 | 188 | : base_type( clone ) |
188 | 189 | { } |
189 | | |
| 190 | #endif |
| 191 | |
190 | 192 | ptr_set_adapter_base& operator=( ptr_set_adapter_base r ) |
191 | 193 | { |
192 | 194 | this->swap( r ); |
193 | 195 | return *this; |
194 | 196 | } |
195 | 197 | |
| 198 | #ifndef BOOST_NO_AUTO_PTR |
196 | 199 | template< typename PtrContainer > |
197 | 200 | ptr_set_adapter_base& operator=( std::auto_ptr<PtrContainer> clone ) |
198 | 201 | { |
199 | 202 | base_type::operator=( clone ); |
200 | 203 | return *this; |
201 | 204 | } |
| 205 | #endif |
202 | 206 | |
203 | 207 | using base_type::erase; |
204 | 208 | |
… |
… |
|
385 | 389 | : base_type( r ) |
386 | 390 | { } |
387 | 391 | |
| 392 | #ifndef BOOST_NO_AUTO_PTR |
388 | 393 | template< class PtrContainer > |
389 | 394 | explicit ptr_set_adapter( std::auto_ptr<PtrContainer> clone ) |
390 | 395 | : base_type( clone ) |
391 | 396 | { } |
392 | | |
| 397 | #endif |
393 | 398 | template< class U, class Set, class CA, bool b > |
394 | 399 | ptr_set_adapter& operator=( const ptr_set_adapter<U,Set,CA,b>& r ) |
395 | 400 | { |
… |
… |
|
397 | 402 | return *this; |
398 | 403 | } |
399 | 404 | |
| 405 | #ifndef BOOST_NO_AUTO_PTR |
400 | 406 | template< class T > |
401 | 407 | void operator=( std::auto_ptr<T> r ) |
402 | 408 | { |
403 | 409 | base_type::operator=( r ); |
404 | 410 | } |
405 | | |
| 411 | #endif |
406 | 412 | std::pair<iterator,bool> insert( key_type* x ) // strong |
407 | 413 | { |
408 | 414 | this->enforce_null_policy( x, "Null pointer in 'ptr_set::insert()'" ); |
… |
… |
|
415 | 421 | return std::make_pair( iterator( res.first ), res.second ); |
416 | 422 | } |
417 | 423 | |
| 424 | #ifndef BOOST_NO_AUTO_PTR |
418 | 425 | template< class U > |
419 | 426 | std::pair<iterator,bool> insert( std::auto_ptr<U> x ) |
420 | 427 | { |
421 | 428 | return insert( x.release() ); |
422 | 429 | } |
423 | | |
| 430 | #endif |
424 | 431 | |
425 | 432 | iterator insert( iterator where, key_type* x ) // strong |
426 | 433 | { |
… |
… |
|
434 | 441 | return iterator( res); |
435 | 442 | } |
436 | 443 | |
| 444 | #ifndef BOOST_NO_AUTO_PTR |
437 | 445 | template< class U > |
438 | 446 | iterator insert( iterator where, std::auto_ptr<U> x ) |
439 | 447 | { |
440 | 448 | return insert( where, x.release() ); |
441 | 449 | } |
442 | | |
| 450 | #endif |
| 451 | |
443 | 452 | template< typename InputIterator > |
444 | 453 | void insert( InputIterator first, InputIterator last ) // basic |
445 | 454 | { |
… |
… |
|
585 | 594 | : base_type( r ) |
586 | 595 | { } |
587 | 596 | |
| 597 | #ifndef BOOST_NO_AUTO_PTR |
588 | 598 | template< class PtrContainer > |
589 | 599 | explicit ptr_multiset_adapter( std::auto_ptr<PtrContainer> clone ) |
590 | 600 | : base_type( clone ) |
591 | 601 | { } |
592 | | |
| 602 | #endif |
593 | 603 | template< class U, class Set, class CA, bool b > |
594 | 604 | ptr_multiset_adapter& operator=( const ptr_multiset_adapter<U,Set,CA,b>& r ) |
595 | 605 | { |
… |
… |
|
597 | 607 | return *this; |
598 | 608 | } |
599 | 609 | |
| 610 | #ifndef BOOST_NO_AUTO_PTR |
600 | 611 | template< class T > |
601 | 612 | void operator=( std::auto_ptr<T> r ) |
602 | 613 | { |
603 | 614 | base_type::operator=( r ); |
604 | 615 | } |
605 | | |
| 616 | #endif |
606 | 617 | iterator insert( iterator before, key_type* x ) // strong |
607 | 618 | { |
608 | 619 | return base_type::insert( before, x ); |
609 | 620 | } |
610 | 621 | |
| 622 | #ifndef BOOST_NO_AUTO_PTR |
611 | 623 | template< class U > |
612 | 624 | iterator insert( iterator before, std::auto_ptr<U> x ) |
613 | 625 | { |
614 | 626 | return insert( before, x.release() ); |
615 | 627 | } |
616 | | |
| 628 | #endif |
| 629 | |
617 | 630 | iterator insert( key_type* x ) // strong |
618 | 631 | { |
619 | 632 | this->enforce_null_policy( x, "Null pointer in 'ptr_multiset::insert()'" ); |
… |
… |
|
625 | 638 | return iterator( res ); |
626 | 639 | } |
627 | 640 | |
| 641 | #ifndef BOOST_NO_AUTO_PTR |
628 | 642 | template< class U > |
629 | 643 | iterator insert( std::auto_ptr<U> x ) |
630 | 644 | { |
631 | 645 | return insert( x.release() ); |
632 | 646 | } |
| 647 | #endif |
633 | 648 | |
634 | 649 | template< typename InputIterator > |
635 | 650 | void insert( InputIterator first, InputIterator last ) // basic |