[libc++] Avoid instantiating type_trait classes
authorNikolas Klauser <nikolasklauser@berlin.de>
Mon, 5 Sep 2022 22:33:34 +0000 (00:33 +0200)
committerNikolas Klauser <nikolasklauser@berlin.de>
Tue, 6 Sep 2022 17:09:42 +0000 (19:09 +0200)
commit5fab33af7f083a0043112742027172e9f297c07f
treefdeddf314979f76bd49964c57880724b95799e17
parent2fb68c0628e4e5d07c06164a42c0dd17f8ba16e7
[libc++] Avoid instantiating type_trait classes

Use `using` aliases to avoid instantiating lots of types

Reviewed By: ldionne, #libc

Spies: libcxx-commits, miyuki

Differential Revision: https://reviews.llvm.org/D132785
106 files changed:
libcxx/include/__algorithm/copy.h
libcxx/include/__algorithm/half_positive.h
libcxx/include/__algorithm/iterator_operations.h
libcxx/include/__algorithm/move.h
libcxx/include/__algorithm/move_backward.h
libcxx/include/__algorithm/partition.h
libcxx/include/__algorithm/ranges_iterator_concept.h
libcxx/include/__algorithm/ranges_merge.h
libcxx/include/__algorithm/ranges_partition.h
libcxx/include/__algorithm/ranges_partition_copy.h
libcxx/include/__algorithm/ranges_stable_partition.h
libcxx/include/__algorithm/set_difference.h
libcxx/include/__algorithm/stable_partition.h
libcxx/include/__algorithm/uniform_random_bit_generator_adaptor.h
libcxx/include/__concepts/class_or_enum.h
libcxx/include/__coroutine/coroutine_handle.h
libcxx/include/__filesystem/path.h
libcxx/include/__functional/bind.h
libcxx/include/__functional/function.h
libcxx/include/__functional/invoke.h
libcxx/include/__hash_table
libcxx/include/__iterator/distance.h
libcxx/include/__iterator/iterator_traits.h
libcxx/include/__iterator/move_iterator.h
libcxx/include/__memory/allocator_arg_t.h
libcxx/include/__memory/allocator_traits.h
libcxx/include/__memory/pointer_traits.h
libcxx/include/__memory/shared_ptr.h
libcxx/include/__memory/uninitialized_algorithms.h
libcxx/include/__memory/unique_ptr.h
libcxx/include/__node_handle
libcxx/include/__numeric/gcd_lcm.h
libcxx/include/__random/is_seed_sequence.h
libcxx/include/__random/uniform_int_distribution.h
libcxx/include/__split_buffer
libcxx/include/__tree
libcxx/include/__tuple/apply_cv.h
libcxx/include/__tuple/make_tuple_types.h
libcxx/include/__tuple/sfinae_helpers.h
libcxx/include/__type_traits/add_lvalue_reference.h
libcxx/include/__type_traits/add_pointer.h
libcxx/include/__type_traits/add_rvalue_reference.h
libcxx/include/__type_traits/apply_cv.h
libcxx/include/__type_traits/can_extract_key.h
libcxx/include/__type_traits/copy_cvref.h
libcxx/include/__type_traits/decay.h
libcxx/include/__type_traits/is_convertible.h
libcxx/include/__type_traits/is_copy_assignable.h
libcxx/include/__type_traits/is_copy_constructible.h
libcxx/include/__type_traits/is_destructible.h
libcxx/include/__type_traits/is_floating_point.h
libcxx/include/__type_traits/is_integral.h
libcxx/include/__type_traits/is_member_function_pointer.h
libcxx/include/__type_traits/is_member_object_pointer.h
libcxx/include/__type_traits/is_member_pointer.h
libcxx/include/__type_traits/is_move_assignable.h
libcxx/include/__type_traits/is_move_constructible.h
libcxx/include/__type_traits/is_nothrow_copy_assignable.h
libcxx/include/__type_traits/is_nothrow_copy_constructible.h
libcxx/include/__type_traits/is_nothrow_destructible.h
libcxx/include/__type_traits/is_nothrow_move_assignable.h
libcxx/include/__type_traits/is_nothrow_move_constructible.h
libcxx/include/__type_traits/is_null_pointer.h
libcxx/include/__type_traits/is_pointer.h
libcxx/include/__type_traits/is_reference_wrapper.h
libcxx/include/__type_traits/is_swappable.h
libcxx/include/__type_traits/is_trivially_copy_assignable.h
libcxx/include/__type_traits/is_trivially_copy_constructible.h
libcxx/include/__type_traits/is_trivially_move_assignable.h
libcxx/include/__type_traits/is_trivially_move_constructible.h
libcxx/include/__type_traits/is_void.h
libcxx/include/__type_traits/make_const_lvalue_ref.h
libcxx/include/__type_traits/make_signed.h
libcxx/include/__type_traits/make_unsigned.h
libcxx/include/__type_traits/remove_all_extents.h
libcxx/include/__type_traits/remove_const.h
libcxx/include/__type_traits/remove_const_ref.h
libcxx/include/__type_traits/remove_cv.h
libcxx/include/__type_traits/remove_cvref.h
libcxx/include/__type_traits/remove_extent.h
libcxx/include/__type_traits/remove_pointer.h
libcxx/include/__type_traits/remove_reference.h
libcxx/include/__type_traits/remove_volatile.h
libcxx/include/__utility/forward.h
libcxx/include/__utility/in_place.h
libcxx/include/__utility/move.h
libcxx/include/any
libcxx/include/atomic
libcxx/include/experimental/coroutine
libcxx/include/experimental/functional
libcxx/include/experimental/propagate_const
libcxx/include/experimental/simd
libcxx/include/ext/hash_map
libcxx/include/forward_list
libcxx/include/future
libcxx/include/limits
libcxx/include/list
libcxx/include/locale
libcxx/include/new
libcxx/include/optional
libcxx/include/scoped_allocator
libcxx/include/thread
libcxx/include/tuple
libcxx/include/valarray
libcxx/include/variant
libcxx/src/string.cpp