|
2378 | 2378 | using allocator_type = @\seebelownc{}@; |
2379 | 2379 |
|
2380 | 2380 | private: |
2381 | | - using container_node_type = @\unspecnc@; // \expos |
2382 | | - using ator_traits = allocator_traits<allocator_type>; // \expos |
| 2381 | + using @\exposid{container-node-type}@ = @\unspecnc@; // \expos |
| 2382 | + using @\exposid{ator-traits}@ = allocator_traits<allocator_type>; // \expos |
2383 | 2383 |
|
2384 | | - typename ator_traits::template |
2385 | | - rebind_traits<container_node_type>::pointer ptr_; // \expos |
2386 | | - optional<allocator_type> alloc_; // \expos |
| 2384 | + typename @\exposid{ator-traits}@::template |
| 2385 | + rebind_traits<@\exposid{container-node-type}@>::pointer @\exposid{ptr_}@; // \expos |
| 2386 | + optional<allocator_type> @\exposid{alloc_}@; // \expos |
2387 | 2387 |
|
2388 | 2388 | public: |
2389 | 2389 | // \ref{container.node.cons}, constructors, copy, and assignment |
2390 | | - constexpr @\placeholdernc{node-handle}@() noexcept : ptr_(), alloc_() {} |
| 2390 | + constexpr @\placeholdernc{node-handle}@() noexcept : @\exposid{ptr_}@(), @\exposid{alloc_}@() {} |
2391 | 2391 | constexpr @\placeholdernc{node-handle}@(@\placeholdernc{node-handle}@&&) noexcept; |
2392 | 2392 | constexpr @\placeholdernc{node-handle}@& operator=(@\placeholdernc{node-handle}@&&); |
2393 | 2393 |
|
|
2405 | 2405 |
|
2406 | 2406 | // \ref{container.node.modifiers}, modifiers |
2407 | 2407 | constexpr void swap(@\placeholdernc{node-handle}@&) |
2408 | | - noexcept(ator_traits::propagate_on_container_swap::value || |
2409 | | - ator_traits::is_always_equal::value); |
| 2408 | + noexcept(@\exposid{ator-traits}@::propagate_on_container_swap::value || |
| 2409 | + @\exposid{ator-traits}@::is_always_equal::value); |
2410 | 2410 |
|
2411 | 2411 | friend constexpr void swap(@\placeholdernc{node-handle}@& x, @\placeholdernc{node-handle}@& y) noexcept(noexcept(x.swap(y))) { |
2412 | 2412 | x.swap(y); |
|
2424 | 2424 | \pnum |
2425 | 2425 | \effects |
2426 | 2426 | Constructs a \exposid{node-handle} object initializing |
2427 | | -\tcode{ptr_} with \tcode{nh.ptr_}. Move constructs \tcode{alloc_} with |
2428 | | -\tcode{nh.alloc_}. Assigns \keyword{nullptr} to \tcode{nh.ptr_} and assigns |
2429 | | -\tcode{nullopt} to \tcode{nh.alloc_}. |
| 2427 | +\exposid{ptr_} with \tcode{nh.\exposid{ptr_}}. Move constructs \exposid{alloc_} with |
| 2428 | +\tcode{nh.\exposid{alloc_}}. Assigns \keyword{nullptr} to \tcode{nh.\exposid{ptr_}} and assigns |
| 2429 | +\tcode{nullopt} to \tcode{nh.\exposid{alloc_}}. |
2430 | 2430 | \end{itemdescr} |
2431 | 2431 |
|
2432 | 2432 | \begin{itemdecl} |
|
2436 | 2436 | \begin{itemdescr} |
2437 | 2437 | \pnum |
2438 | 2438 | \expects |
2439 | | -Either \tcode{!alloc_}, or |
2440 | | -\tcode{ator_traits::propagate_on_container_move_assignment::\-value} |
2441 | | -is \tcode{true}, or \tcode{alloc_ == nh.alloc_}. |
| 2439 | +Either \tcode{!\exposid{alloc_}} is \tcode{true}, or \linebreak |
| 2440 | +\tcode{\exposid{ator-traits}::propagate_on_container_move_assignment::value} |
| 2441 | +is \tcode{true}, or \tcode{\exposid{alloc_}\brk{} == nh.\exposid{alloc_}} is \tcode{true}. |
2442 | 2442 |
|
2443 | 2443 | \pnum |
2444 | 2444 | \effects |
2445 | 2445 | \begin{itemize} |
2446 | 2446 | \item |
2447 | | -If \tcode{ptr_ != nullptr}, destroys the \tcode{value_type} |
2448 | | -subobject in the \tcode{container_node_type} object pointed to by \tcode{ptr_} |
2449 | | -by calling \tcode{ator_traits::destroy}, then deallocates \tcode{ptr_} by |
2450 | | -calling \tcode{ator_traits::template rebind_traits<container_node_type>::deallocate}. |
| 2447 | +If \tcode{\exposid{ptr_} != nullptr} is \tcode{true}, destroys the \tcode{value_type} |
| 2448 | +subobject in the \exposid{container-node-type} object pointed to by \exposid{ptr_} |
| 2449 | +by calling \tcode{\exposid{ator-traits}::destroy}, then deallocates \exposid{ptr_} by |
| 2450 | +calling \tcode{\exposid{ator-\-traits}::template rebind_traits<\exposid{container-node-type}>::deallocate}. |
2451 | 2451 | \item |
2452 | | -Assigns \tcode{nh.ptr_} to \tcode{ptr_}. |
| 2452 | +Assigns \tcode{nh.\exposid{ptr_}} to \exposid{ptr_}. |
2453 | 2453 | \item |
2454 | | -If \tcode{!alloc\textunderscore} or \tcode{ator_traits::propagate_on_container_move_assignment::value} |
| 2454 | +If \tcode{!\exposid{alloc_}} is \tcode{true} or |
| 2455 | +\tcode{\exposid{ator-traits}::propagate_on_container_move_assignment::value} |
2455 | 2456 | is \tcode{true}, \linebreak |
2456 | | -move assigns \tcode{nh.alloc_} to \tcode{alloc_}. |
| 2457 | +move assigns \tcode{nh.\exposid{alloc_}} to \exposid{alloc_}. |
2457 | 2458 | \item |
2458 | 2459 | Assigns |
2459 | | -\keyword{nullptr} to \tcode{nh.ptr_} and assigns \tcode{nullopt} to |
2460 | | -\tcode{nh.alloc_}. |
| 2460 | +\keyword{nullptr} to \tcode{nh.\exposid{ptr_}} and assigns \tcode{nullopt} to |
| 2461 | +\tcode{nh.\exposid{alloc_}}. |
2461 | 2462 | \end{itemize} |
2462 | 2463 |
|
2463 | 2464 | \pnum |
|
2478 | 2479 | \begin{itemdescr} |
2479 | 2480 | \pnum |
2480 | 2481 | \effects |
2481 | | -If \tcode{ptr_ != nullptr}, destroys the \tcode{value_type} subobject |
2482 | | -in the \tcode{container_node_type} object pointed to by \tcode{ptr_} by calling |
2483 | | -\tcode{ator_traits::destroy}, then deallocates \tcode{ptr_} by calling |
2484 | | -\tcode{ator_traits::template rebind_traits<container_node_type>::deallocate}. |
| 2482 | +If \tcode{\exposid{ptr_} != nullptr} is \tcode{true}, destroys the \tcode{value_type} subobject |
| 2483 | +in the \exposid{container-node-type} object pointed to by \exposid{ptr_} by calling |
| 2484 | +\tcode{\exposid{ator-traits}::destroy}, then deallocates \exposid{ptr_} by calling |
| 2485 | +\tcode{\exposid{ator-\-traits}::template rebind_traits<\exposid{container-node-type}>::deallocate}. |
2485 | 2486 | \end{itemdescr} |
2486 | 2487 |
|
2487 | 2488 | \rSec3[container.node.observers]{Observers} |
|
2498 | 2499 | \pnum |
2499 | 2500 | \returns |
2500 | 2501 | A reference to the \tcode{value_type} subobject in the |
2501 | | -\tcode{container_node_type} object pointed to by \tcode{ptr_}. |
| 2502 | +\exposid{container-node-type} object pointed to by \exposid{ptr_}. |
2502 | 2503 |
|
2503 | 2504 | \pnum |
2504 | 2505 | \throws |
|
2517 | 2518 | \pnum |
2518 | 2519 | \returns |
2519 | 2520 | A non-const reference to the \tcode{key_type} member of the |
2520 | | -\tcode{value_type} subobject in the \tcode{contain\-er_node_type} object |
2521 | | -pointed to by \tcode{ptr_}. |
| 2521 | +\tcode{value_type} subobject in the \exposid{contain\-er-node-type} object |
| 2522 | +pointed to by \exposid{ptr_}. |
2522 | 2523 |
|
2523 | 2524 | \pnum |
2524 | 2525 | \throws |
|
2541 | 2542 | \pnum |
2542 | 2543 | \returns |
2543 | 2544 | A reference to the \tcode{mapped_type} member of the |
2544 | | -\tcode{value_type} subobject in the \tcode{container_node_type} object |
2545 | | -pointed to by \tcode{ptr_}. |
| 2545 | +\tcode{value_type} subobject in the \exposid{container-\-node-type} object |
| 2546 | +pointed to by \exposid{ptr_}. |
2546 | 2547 |
|
2547 | 2548 | \pnum |
2548 | 2549 | \throws |
|
2560 | 2561 |
|
2561 | 2562 | \pnum |
2562 | 2563 | \returns |
2563 | | -\tcode{*alloc_}. |
| 2564 | +\tcode{*\exposid{alloc_}}. |
2564 | 2565 |
|
2565 | 2566 | \pnum |
2566 | 2567 | \throws |
|
2574 | 2575 | \begin{itemdescr} |
2575 | 2576 | \pnum |
2576 | 2577 | \returns |
2577 | | -\tcode{ptr_ != nullptr}. |
| 2578 | +\tcode{\exposid{ptr_} != nullptr}. |
2578 | 2579 | \end{itemdescr} |
2579 | 2580 |
|
2580 | 2581 | \begin{itemdecl} |
|
2584 | 2585 | \begin{itemdescr} |
2585 | 2586 | \pnum |
2586 | 2587 | \returns |
2587 | | -\tcode{ptr_ == nullptr}. |
| 2588 | +\tcode{\exposid{ptr_} == nullptr}. |
2588 | 2589 | \end{itemdescr} |
2589 | 2590 |
|
2590 | 2591 | \rSec3[container.node.modifiers]{Modifiers} |
2591 | 2592 |
|
2592 | 2593 | \begin{itemdecl} |
2593 | 2594 | constexpr void swap(@\placeholdernc{node-handle}@& nh) |
2594 | | - noexcept(ator_traits::propagate_on_container_swap::value || |
2595 | | - ator_traits::is_always_equal::value); |
| 2595 | + noexcept(@\exposid{ator-traits}@::propagate_on_container_swap::value || |
| 2596 | + @\exposid{ator-traits}@::is_always_equal::value); |
2596 | 2597 | \end{itemdecl} |
2597 | 2598 |
|
2598 | 2599 | \begin{itemdescr} |
2599 | 2600 | \pnum |
2600 | 2601 | \expects |
2601 | | -\tcode{!alloc_}, or \tcode{!nh.alloc_}, or |
2602 | | -\tcode{ator_traits::propagate_on_container_swap::value} is \tcode{true}, |
2603 | | -or \tcode{alloc_ == nh.alloc_}. |
| 2602 | +\tcode{!\exposid{alloc_}} is \tcode{true}, or \tcode{!nh.\exposid{alloc_}}, or |
| 2603 | +\tcode{\exposid{ator-traits}::propagate_on_container_swap::\-value} is \tcode{true}, |
| 2604 | +or \tcode{\exposid{alloc_} == nh.\exposid{alloc_}} is \tcode{true}. |
2604 | 2605 |
|
2605 | 2606 | \pnum |
2606 | 2607 | \effects |
2607 | | -Calls \tcode{swap(ptr_, nh.ptr_)}. If \tcode{!alloc_}, or |
2608 | | -\tcode{!nh.alloc_}, or \tcode{ator_traits::propagate_on_container_swap::value} |
2609 | | -is \tcode{true} calls \tcode{swap(alloc_, nh.alloc_)}. |
| 2608 | +Calls \tcode{swap(\exposid{ptr_}, nh.\exposid{ptr_})}. If \tcode{!\exposid{alloc_}} is \tcode{true}, or |
| 2609 | +\tcode{!nh.\exposid{alloc_}} is \tcode{true}, or \tcode{\exposid{ator-traits}::\-propagate_on_container_swap::value} |
| 2610 | +is \tcode{true} calls \tcode{swap(\exposid{alloc_}, nh.\exposid{alloc_})}. |
2610 | 2611 | \end{itemdescr} |
2611 | 2612 |
|
2612 | 2613 | \rSec2[container.insert.return]{Insert return type} |
|
0 commit comments