|
153 | 153 | \rSec2[meta.type.synop]{Header \tcode{<type_traits>} synopsis}
|
154 | 154 |
|
155 | 155 | \indexheader{type_traits}%
|
156 |
| -% FIXME: Many index entries missing. |
157 | 156 | \begin{codeblock}
|
158 | 157 | // all freestanding
|
159 | 158 | namespace std {
|
|
395 | 394 | template<class Fn, class Tuple>
|
396 | 395 | using @\libglobal{apply_result_t}@ = typename apply_result<Fn, Tuple>::type;
|
397 | 396 | template<class T>
|
398 |
| - using unwrap_reference_t = typename unwrap_reference<T>::type; |
| 397 | + using @\libglobal{unwrap_reference_t}@ = typename unwrap_reference<T>::type; |
399 | 398 | template<class T>
|
400 |
| - using unwrap_ref_decay_t = typename unwrap_ref_decay<T>::type; |
| 399 | + using @\libglobal{unwrap_ref_decay_t}@ = typename unwrap_ref_decay<T>::type; |
401 | 400 | template<class...>
|
402 | 401 | using @\libglobal{void_t}@ = void;
|
403 | 402 |
|
|
508 | 507 | template<class T>
|
509 | 508 | constexpr bool @\libglobal{is_destructible_v}@ = is_destructible<T>::value;
|
510 | 509 | template<class T, class... Args>
|
511 |
| - constexpr bool is_trivially_constructible_v = is_trivially_constructible<T, Args...>::value; |
| 510 | + constexpr bool @\libglobal{is_trivially_constructible_v}@ = is_trivially_constructible<T, Args...>::value; |
512 | 511 | template<class T>
|
513 |
| - constexpr bool is_trivially_default_constructible_v |
| 512 | + constexpr bool @\libglobal{is_trivially_default_constructible_v}@ |
514 | 513 | = is_trivially_default_constructible<T>::value;
|
515 | 514 | template<class T>
|
516 |
| - constexpr bool is_trivially_copy_constructible_v = is_trivially_copy_constructible<T>::value; |
| 515 | + constexpr bool @\libglobal{is_trivially_copy_constructible_v}@ = is_trivially_copy_constructible<T>::value; |
517 | 516 | template<class T>
|
518 |
| - constexpr bool is_trivially_move_constructible_v = is_trivially_move_constructible<T>::value; |
| 517 | + constexpr bool @\libglobal{is_trivially_move_constructible_v}@ = is_trivially_move_constructible<T>::value; |
519 | 518 | template<class T, class U>
|
520 | 519 | constexpr bool @\libglobal{is_trivially_assignable_v}@ = is_trivially_assignable<T, U>::value;
|
521 | 520 | template<class T>
|
522 |
| - constexpr bool is_trivially_copy_assignable_v = is_trivially_copy_assignable<T>::value; |
| 521 | + constexpr bool @\libglobal{is_trivially_copy_assignable_v}@ = is_trivially_copy_assignable<T>::value; |
523 | 522 | template<class T>
|
524 |
| - constexpr bool is_trivially_move_assignable_v = is_trivially_move_assignable<T>::value; |
| 523 | + constexpr bool @\libglobal{is_trivially_move_assignable_v}@ = is_trivially_move_assignable<T>::value; |
525 | 524 | template<class T>
|
526 | 525 | constexpr bool @\libglobal{is_trivially_destructible_v}@ = is_trivially_destructible<T>::value;
|
527 | 526 | template<class T, class... Args>
|
528 |
| - constexpr bool is_nothrow_constructible_v = is_nothrow_constructible<T, Args...>::value; |
| 527 | + constexpr bool @\libglobal{is_nothrow_constructible_v}@ = is_nothrow_constructible<T, Args...>::value; |
529 | 528 | template<class T>
|
530 |
| - constexpr bool is_nothrow_default_constructible_v |
| 529 | + constexpr bool @\libglobal{is_nothrow_default_constructible_v}@ |
531 | 530 | = is_nothrow_default_constructible<T>::value;
|
532 | 531 | template<class T>
|
533 | 532 | constexpr bool is_nothrow_copy_constructible_v = is_nothrow_copy_constructible<T>::value;
|
534 | 533 | template<class T>
|
535 |
| - constexpr bool is_nothrow_move_constructible_v = is_nothrow_move_constructible<T>::value; |
| 534 | + constexpr bool @\libglobal{is_nothrow_move_constructible_v}@ = is_nothrow_move_constructible<T>::value; |
536 | 535 | template<class T, class U>
|
537 | 536 | constexpr bool @\libglobal{is_nothrow_assignable_v}@ = is_nothrow_assignable<T, U>::value;
|
538 | 537 | template<class T>
|
|
554 | 553 | template<class T>
|
555 | 554 | constexpr bool @\libglobal{has_virtual_destructor_v}@ = has_virtual_destructor<T>::value;
|
556 | 555 | template<class T>
|
557 |
| - constexpr bool has_unique_object_representations_v |
| 556 | + constexpr bool @\libglobal{has_unique_object_representations_v}@ |
558 | 557 | = has_unique_object_representations<T>::value;
|
559 | 558 | template<class T, class U>
|
560 | 559 | constexpr bool @\libglobal{reference_constructs_from_temporary_v}@
|
|
585 | 584 | template<class T, class U>
|
586 | 585 | constexpr bool @\libglobal{is_layout_compatible_v}@ = is_layout_compatible<T, U>::value;
|
587 | 586 | template<class Base, class Derived>
|
588 |
| - constexpr bool is_pointer_interconvertible_base_of_v |
| 587 | + constexpr bool @\libglobal{is_pointer_interconvertible_base_of_v}@ |
589 | 588 | = is_pointer_interconvertible_base_of<Base, Derived>::value;
|
590 | 589 | template<class Fn, class... ArgTypes>
|
591 | 590 | constexpr bool @\libglobal{is_invocable_v}@ = is_invocable<Fn, ArgTypes...>::value;
|
|
594 | 593 | template<class Fn, class... ArgTypes>
|
595 | 594 | constexpr bool @\libglobal{is_nothrow_invocable_v}@ = is_nothrow_invocable<Fn, ArgTypes...>::value;
|
596 | 595 | template<class R, class Fn, class... ArgTypes>
|
597 |
| - constexpr bool is_nothrow_invocable_r_v = is_nothrow_invocable_r<R, Fn, ArgTypes...>::value; |
| 596 | + constexpr bool @\libglobal{is_nothrow_invocable_r_v}@ = is_nothrow_invocable_r<R, Fn, ArgTypes...>::value; |
598 | 597 | template<class Fn, class Tuple>
|
599 | 598 | constexpr bool @\libglobal{is_applicable_v}@ = is_applicable<Fn, Tuple>::value;
|
600 | 599 | template<class Fn, class Tuple>
|
|
0 commit comments