[libc++] Granularize some more of <type_traits>

Reviewed By: ldionne, #libc

Spies: libcxx-commits, mgorny

Differential Revision: https://reviews.llvm.org/D127631

NOKEYCHECK=True
GitOrigin-RevId: 3abaefe64c22a0c2f2a10202188aca7696f657bd
diff --git a/include/module.modulemap.in b/include/module.modulemap.in
index a128024..ab79cf7 100644
--- a/include/module.modulemap.in
+++ b/include/module.modulemap.in
@@ -1030,80 +1030,103 @@
     export functional.__functional.unwrap_ref
     export *
 
-    module add_const                        { private header "__type_traits/add_const.h" }
-    module add_cv                           { private header "__type_traits/add_cv.h" }
-    module add_lvalue_reference             { private header "__type_traits/add_lvalue_reference.h" }
-    module add_pointer                      { private header "__type_traits/add_pointer.h" }
-    module add_rvalue_reference             { private header "__type_traits/add_rvalue_reference.h" }
-    module add_volatile                     { private header "__type_traits/add_volatile.h" }
-    module alignment_of                     { private header "__type_traits/alignment_of.h" }
-    module apply_cv                         { private header "__type_traits/apply_cv.h" }
-    module conditional                      { private header "__type_traits/conditional.h" }
-    module conjunction                      { private header "__type_traits/conjunction.h" }
-    module decay                            { private header "__type_traits/decay.h" }
-    module disjunction                      { private header "__type_traits/disjunction.h" }
-    module enable_if                        { private header "__type_traits/enable_if.h" }
-    module extent                           { private header "__type_traits/extent.h" }
-    module has_unique_object_representation { private header "__type_traits/has_unique_object_representation.h" }
-    module has_virtual_destructor           { private header "__type_traits/has_virtual_destructor.h" }
-    module integral_constant                { private header "__type_traits/integral_constant.h" }
-    module is_abstract                      { private header "__type_traits/is_abstract.h" }
-    module is_aggregate                     { private header "__type_traits/is_aggregate.h" }
-    module is_arithmetic                    { private header "__type_traits/is_arithmetic.h" }
-    module is_array                         { private header "__type_traits/is_array.h" }
-    module is_assignable                    { private header "__type_traits/is_assignable.h" }
-    module is_base_of                       { private header "__type_traits/is_base_of.h" }
-    module is_bounded_array                 { private header "__type_traits/is_bounded_array.h" }
-    module is_callable                      { private header "__type_traits/is_callable.h" }
-    module is_class                         { private header "__type_traits/is_class.h" }
-    module is_compound                      { private header "__type_traits/is_compound.h" }
-    module is_const                         { private header "__type_traits/is_const.h" }
-    module is_constant_evaluated            { private header "__type_traits/is_constant_evaluated.h" }
-    module is_convertible                   { private header "__type_traits/is_convertible.h" }
-    module is_copy_assignable               { private header "__type_traits/is_copy_assignable.h" }
-    module is_core_convertible              { private header "__type_traits/is_core_convertible.h" }
-    module is_empty                         { private header "__type_traits/is_empty.h" }
-    module is_enum                          { private header "__type_traits/is_enum.h" }
-    module is_final                         { private header "__type_traits/is_final.h" }
-    module is_floating_point                { private header "__type_traits/is_floating_point.h" }
-    module is_function                      { private header "__type_traits/is_function.h" }
-    module is_fundamental                   { private header "__type_traits/is_fundamental.h" }
-    module is_integral                      { private header "__type_traits/is_integral.h" }
-    module is_literal_type                  { private header "__type_traits/is_literal_type.h" }
-    module is_member_function_pointer       { private header "__type_traits/is_member_function_pointer.h" }
-    module is_member_object_pointer         { private header "__type_traits/is_member_object_pointer.h" }
-    module is_member_pointer                { private header "__type_traits/is_member_pointer.h" }
-    module is_move_assignable               { private header "__type_traits/is_move_assignable.h" }
-    module is_null_pointer                  { private header "__type_traits/is_null_pointer.h" }
-    module is_object                        { private header "__type_traits/is_object.h" }
-    module is_pod                           { private header "__type_traits/is_pod.h" }
-    module is_pointer                       { private header "__type_traits/is_pointer.h" }
-    module is_polymorphic                   { private header "__type_traits/is_polymorphic.h" }
-    module is_reference                     { private header "__type_traits/is_reference.h" }
-    module is_reference_wrapper             { private header "__type_traits/is_reference_wrapper.h" }
-    module is_referenceable                 { private header "__type_traits/is_referenceable.h" }
-    module is_same                          { private header "__type_traits/is_same.h" }
-    module is_scalar                        { private header "__type_traits/is_scalar.h" }
-    module is_scoped_enum                   { private header "__type_traits/is_scoped_enum.h" }
-    module is_signed                        { private header "__type_traits/is_signed.h" }
-    module is_standard_layout               { private header "__type_traits/is_standard_layout.h" }
-    module is_trivial                       { private header "__type_traits/is_trivial.h" }
-    module is_trivially_copyable            { private header "__type_traits/is_trivially_copyable.h" }
-    module is_unbounded_array               { private header "__type_traits/is_unbounded_array.h" }
-    module is_union                         { private header "__type_traits/is_union.h" }
-    module is_unsigned                      { private header "__type_traits/is_unsigned.h" }
-    module is_void                          { private header "__type_traits/is_void.h" }
-    module is_volatile                      { private header "__type_traits/is_volatile.h" }
-    module rank                             { private header "__type_traits/rank.h" }
-    module remove_all_extents               { private header "__type_traits/remove_all_extents.h" }
-    module remove_const                     { private header "__type_traits/remove_const.h" }
-    module remove_cv                        { private header "__type_traits/remove_cv.h" }
-    module remove_extent                    { private header "__type_traits/remove_extent.h" }
-    module remove_pointer                   { private header "__type_traits/remove_pointer.h" }
-    module remove_reference                 { private header "__type_traits/remove_reference.h" }
-    module remove_volatile                  { private header "__type_traits/remove_volatile.h" }
-    module type_identity                    { private header "__type_traits/type_identity.h" }
-    module underlying_type                  { private header "__type_traits/underlying_type.h" }
+    module add_const                          { private header "__type_traits/add_const.h" }
+    module add_cv                             { private header "__type_traits/add_cv.h" }
+    module add_lvalue_reference               { private header "__type_traits/add_lvalue_reference.h" }
+    module add_pointer                        { private header "__type_traits/add_pointer.h" }
+    module add_rvalue_reference               { private header "__type_traits/add_rvalue_reference.h" }
+    module add_volatile                       { private header "__type_traits/add_volatile.h" }
+    module alignment_of                       { private header "__type_traits/alignment_of.h" }
+    module apply_cv                           { private header "__type_traits/apply_cv.h" }
+    module conditional                        { private header "__type_traits/conditional.h" }
+    module conjunction                        { private header "__type_traits/conjunction.h" }
+    module decay                              { private header "__type_traits/decay.h" }
+    module disjunction                        { private header "__type_traits/disjunction.h" }
+    module enable_if                          { private header "__type_traits/enable_if.h" }
+    module extent                             { private header "__type_traits/extent.h" }
+    module has_unique_object_representation   { private header "__type_traits/has_unique_object_representation.h" }
+    module has_virtual_destructor             { private header "__type_traits/has_virtual_destructor.h" }
+    module integral_constant                  { private header "__type_traits/integral_constant.h" }
+    module is_abstract                        { private header "__type_traits/is_abstract.h" }
+    module is_aggregate                       { private header "__type_traits/is_aggregate.h" }
+    module is_arithmetic                      { private header "__type_traits/is_arithmetic.h" }
+    module is_array                           { private header "__type_traits/is_array.h" }
+    module is_assignable                      { private header "__type_traits/is_assignable.h" }
+    module is_base_of                         { private header "__type_traits/is_base_of.h" }
+    module is_bounded_array                   { private header "__type_traits/is_bounded_array.h" }
+    module is_callable                        { private header "__type_traits/is_callable.h" }
+    module is_class                           { private header "__type_traits/is_class.h" }
+    module is_compound                        { private header "__type_traits/is_compound.h" }
+    module is_const                           { private header "__type_traits/is_const.h" }
+    module is_constant_evaluated              { private header "__type_traits/is_constant_evaluated.h" }
+    module is_constructible                   { private header "__type_traits/is_constructible.h" }
+    module is_convertible                     { private header "__type_traits/is_convertible.h" }
+    module is_copy_assignable                 { private header "__type_traits/is_copy_assignable.h" }
+    module is_copy_constructible              { private header "__type_traits/is_copy_constructible.h" }
+    module is_core_convertible                { private header "__type_traits/is_core_convertible.h" }
+    module is_default_constructible           { private header "__type_traits/is_default_constructible.h" }
+    module is_destructible                    { private header "__type_traits/is_destructible.h" }
+    module is_empty                           { private header "__type_traits/is_empty.h" }
+    module is_enum                            { private header "__type_traits/is_enum.h" }
+    module is_final                           { private header "__type_traits/is_final.h" }
+    module is_floating_point                  { private header "__type_traits/is_floating_point.h" }
+    module is_function                        { private header "__type_traits/is_function.h" }
+    module is_fundamental                     { private header "__type_traits/is_fundamental.h" }
+    module is_integral                        { private header "__type_traits/is_integral.h" }
+    module is_literal_type                    { private header "__type_traits/is_literal_type.h" }
+    module is_member_function_pointer         { private header "__type_traits/is_member_function_pointer.h" }
+    module is_member_object_pointer           { private header "__type_traits/is_member_object_pointer.h" }
+    module is_member_pointer                  { private header "__type_traits/is_member_pointer.h" }
+    module is_move_assignable                 { private header "__type_traits/is_move_assignable.h" }
+    module is_move_constructible              { private header "__type_traits/is_move_constructible.h" }
+    module is_nothrow_assignable              { private header "__type_traits/is_nothrow_assignable.h" }
+    module is_nothrow_constructible           { private header "__type_traits/is_nothrow_constructible.h" }
+    module is_nothrow_copy_assignable         { private header "__type_traits/is_nothrow_copy_assignable.h" }
+    module is_nothrow_copy_constructible      { private header "__type_traits/is_nothrow_copy_constructible.h" }
+    module is_nothrow_default_constructible   { private header "__type_traits/is_nothrow_default_constructible.h" }
+    module is_nothrow_destructible            { private header "__type_traits/is_nothrow_destructible.h" }
+    module is_nothrow_move_assignable         { private header "__type_traits/is_nothrow_move_assignable.h" }
+    module is_nothrow_move_constructible      { private header "__type_traits/is_nothrow_move_constructible.h" }
+    module is_null_pointer                    { private header "__type_traits/is_null_pointer.h" }
+    module is_object                          { private header "__type_traits/is_object.h" }
+    module is_pod                             { private header "__type_traits/is_pod.h" }
+    module is_pointer                         { private header "__type_traits/is_pointer.h" }
+    module is_polymorphic                     { private header "__type_traits/is_polymorphic.h" }
+    module is_reference                       { private header "__type_traits/is_reference.h" }
+    module is_reference_wrapper               { private header "__type_traits/is_reference_wrapper.h" }
+    module is_referenceable                   { private header "__type_traits/is_referenceable.h" }
+    module is_same                            { private header "__type_traits/is_same.h" }
+    module is_scalar                          { private header "__type_traits/is_scalar.h" }
+    module is_scoped_enum                     { private header "__type_traits/is_scoped_enum.h" }
+    module is_signed                          { private header "__type_traits/is_signed.h" }
+    module is_standard_layout                 { private header "__type_traits/is_standard_layout.h" }
+    module is_trivial                         { private header "__type_traits/is_trivial.h" }
+    module is_trivially_assignable            { private header "__type_traits/is_trivially_assignable.h" }
+    module is_trivially_constructible         { private header "__type_traits/is_trivially_constructible.h" }
+    module is_trivially_copy_assignable       { private header "__type_traits/is_trivially_copy_assignable.h" }
+    module is_trivially_copy_constructible    { private header "__type_traits/is_trivially_copy_constructible.h" }
+    module is_trivially_copyable              { private header "__type_traits/is_trivially_copyable.h" }
+    module is_trivially_default_constructible { private header "__type_traits/is_trivially_default_constructible.h" }
+    module is_trivially_destructible          { private header "__type_traits/is_trivially_destructible.h" }
+    module is_trivially_move_assignable       { private header "__type_traits/is_trivially_move_assignable.h" }
+    module is_trivially_move_constructible    { private header "__type_traits/is_trivially_move_constructible.h" }
+    module is_unbounded_array                 { private header "__type_traits/is_unbounded_array.h" }
+    module is_union                           { private header "__type_traits/is_union.h" }
+    module is_unsigned                        { private header "__type_traits/is_unsigned.h" }
+    module is_void                            { private header "__type_traits/is_void.h" }
+    module is_volatile                        { private header "__type_traits/is_volatile.h" }
+    module negation                           { private header "__type_traits/negation.h" }
+    module rank                               { private header "__type_traits/rank.h" }
+    module remove_all_extents                 { private header "__type_traits/remove_all_extents.h" }
+    module remove_const                       { private header "__type_traits/remove_const.h" }
+    module remove_cv                          { private header "__type_traits/remove_cv.h" }
+    module remove_extent                      { private header "__type_traits/remove_extent.h" }
+    module remove_pointer                     { private header "__type_traits/remove_pointer.h" }
+    module remove_reference                   { private header "__type_traits/remove_reference.h" }
+    module remove_volatile                    { private header "__type_traits/remove_volatile.h" }
+    module type_identity                      { private header "__type_traits/type_identity.h" }
+    module underlying_type                    { private header "__type_traits/underlying_type.h" }
+    module void_t                             { private header "__type_traits/void_t.h" }
   }
   module typeindex {
     header "typeindex"