mirror of
https://github.com/intel/llvm.git
synced 2026-01-16 05:32:28 +08:00
[libc++][Modules] Add missing includes and exports
Several headers are missing includes for things they use. type_traits.is_enum needs to export type_traits.integral_constant so that clients can access its `value` member without explicitly including __type_traits/integral_constant.h themselves. Make `subrange_fwd` a peer submodule to `subrange` rather than a submodule of it, and have `subrange` export `subrange_fwd`. That will make it easier to programmatically generate modules for the private detail headers, and it will accomplish the same effect that __ranges/subrange.h will make subrange_kind visible. Reviewed By: Mordante, #libc Differential Revision: https://reviews.llvm.org/D150055
This commit is contained in:
@@ -23,6 +23,8 @@
|
||||
#include <__iterator/projected.h>
|
||||
#include <__ranges/access.h>
|
||||
#include <__ranges/concepts.h>
|
||||
#include <__type_traits/is_reference.h>
|
||||
#include <__type_traits/remove_cvref.h>
|
||||
#include <__utility/forward.h>
|
||||
#include <__utility/move.h>
|
||||
#include <__utility/pair.h>
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
#include <__ranges/access.h>
|
||||
#include <__ranges/concepts.h>
|
||||
#include <__ranges/dangling.h>
|
||||
#include <__type_traits/remove_cvref.h>
|
||||
#include <__utility/move.h>
|
||||
|
||||
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
|
||||
|
||||
@@ -18,6 +18,8 @@
|
||||
#include <__format/format_parse_context.h>
|
||||
#include <__functional/invoke.h>
|
||||
#include <__memory/addressof.h>
|
||||
#include <__type_traits/conditional.h>
|
||||
#include <__type_traits/is_const.h>
|
||||
#include <__utility/declval.h>
|
||||
#include <__utility/forward.h>
|
||||
#include <__utility/unreachable.h>
|
||||
|
||||
@@ -13,6 +13,9 @@
|
||||
#include <__config>
|
||||
#include <__functional/invoke.h>
|
||||
#include <__functional/weak_result_type.h>
|
||||
#include <__type_traits/decay.h>
|
||||
#include <__type_traits/is_reference_wrapper.h>
|
||||
#include <__type_traits/is_void.h>
|
||||
#include <cstddef>
|
||||
#include <tuple>
|
||||
|
||||
|
||||
@@ -13,6 +13,7 @@
|
||||
#include <__config>
|
||||
#include <__functional/invoke.h>
|
||||
#include <__functional/perfect_forward.h>
|
||||
#include <__type_traits/decay.h>
|
||||
#include <__utility/forward.h>
|
||||
#include <__utility/integer_sequence.h>
|
||||
#include <tuple>
|
||||
|
||||
@@ -13,6 +13,11 @@
|
||||
#include <__config>
|
||||
#include <__functional/invoke.h>
|
||||
#include <__functional/perfect_forward.h>
|
||||
#include <__type_traits/conjunction.h>
|
||||
#include <__type_traits/decay.h>
|
||||
#include <__type_traits/enable_if.h>
|
||||
#include <__type_traits/is_constructible.h>
|
||||
#include <__type_traits/is_move_constructible.h>
|
||||
#include <__utility/forward.h>
|
||||
|
||||
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
|
||||
|
||||
@@ -20,6 +20,7 @@
|
||||
#include <__iterator/distance.h>
|
||||
#include <__iterator/iterator_traits.h>
|
||||
#include <__memory/shared_ptr.h>
|
||||
#include <__type_traits/make_unsigned.h>
|
||||
#include <__utility/pair.h>
|
||||
#include <array>
|
||||
#include <unordered_map>
|
||||
|
||||
@@ -13,6 +13,7 @@
|
||||
#include <__config>
|
||||
#include <__functional/invoke.h>
|
||||
#include <__functional/perfect_forward.h>
|
||||
#include <__type_traits/decay.h>
|
||||
#include <__utility/forward.h>
|
||||
|
||||
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
|
||||
|
||||
@@ -25,8 +25,12 @@
|
||||
#include <__memory/compressed_pair.h>
|
||||
#include <__memory/unique_ptr.h>
|
||||
#include <__type_traits/aligned_storage.h>
|
||||
#include <__type_traits/decay.h>
|
||||
#include <__type_traits/is_core_convertible.h>
|
||||
#include <__type_traits/is_scalar.h>
|
||||
#include <__type_traits/is_trivially_copy_constructible.h>
|
||||
#include <__type_traits/is_trivially_destructible.h>
|
||||
#include <__type_traits/is_void.h>
|
||||
#include <__type_traits/strip_signature.h>
|
||||
#include <__utility/forward.h>
|
||||
#include <__utility/move.h>
|
||||
|
||||
@@ -13,6 +13,10 @@
|
||||
#include <__config>
|
||||
#include <__functional/invoke.h>
|
||||
#include <__functional/perfect_forward.h>
|
||||
#include <__type_traits/decay.h>
|
||||
#include <__type_traits/enable_if.h>
|
||||
#include <__type_traits/is_constructible.h>
|
||||
#include <__type_traits/is_move_constructible.h>
|
||||
#include <__utility/forward.h>
|
||||
|
||||
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
|
||||
|
||||
@@ -30,10 +30,13 @@
|
||||
#include <__type_traits/is_const.h>
|
||||
#include <__type_traits/is_copy_constructible.h>
|
||||
#include <__type_traits/is_nothrow_constructible.h>
|
||||
#include <__type_traits/is_nothrow_copy_constructible.h>
|
||||
#include <__type_traits/is_nothrow_default_constructible.h>
|
||||
#include <__type_traits/is_nothrow_move_assignable.h>
|
||||
#include <__type_traits/is_nothrow_move_constructible.h>
|
||||
#include <__type_traits/is_pointer.h>
|
||||
#include <__type_traits/is_reference.h>
|
||||
#include <__type_traits/is_swappable.h>
|
||||
#include <__type_traits/remove_const.h>
|
||||
#include <__type_traits/remove_cvref.h>
|
||||
#include <__utility/forward.h>
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
|
||||
#include <__availability>
|
||||
#include <__config>
|
||||
#include <__type_traits/make_unsigned.h>
|
||||
#include <cctype>
|
||||
#include <clocale>
|
||||
#include <cstdint>
|
||||
|
||||
@@ -16,6 +16,9 @@
|
||||
#include <__config>
|
||||
#include <__memory/addressof.h>
|
||||
#include <__memory/construct_at.h>
|
||||
#include <__type_traits/is_nothrow_constructible.h>
|
||||
#include <__type_traits/is_nothrow_copy_constructible.h>
|
||||
#include <__type_traits/is_nothrow_default_constructible.h>
|
||||
#include <__utility/move.h>
|
||||
#include <optional>
|
||||
|
||||
|
||||
@@ -32,6 +32,10 @@
|
||||
#include <__ranges/non_propagating_cache.h>
|
||||
#include <__ranges/range_adaptor.h>
|
||||
#include <__ranges/view_interface.h>
|
||||
#include <__type_traits/conditional.h>
|
||||
#include <__type_traits/decay.h>
|
||||
#include <__type_traits/is_nothrow_constructible.h>
|
||||
#include <__type_traits/is_object.h>
|
||||
#include <__utility/forward.h>
|
||||
#include <__utility/in_place.h>
|
||||
#include <__utility/move.h>
|
||||
|
||||
@@ -30,6 +30,7 @@
|
||||
#include <__ranges/non_propagating_cache.h>
|
||||
#include <__ranges/range_adaptor.h>
|
||||
#include <__ranges/view_interface.h>
|
||||
#include <__type_traits/common_type.h>
|
||||
#include <__type_traits/maybe_const.h>
|
||||
#include <__utility/forward.h>
|
||||
#include <optional>
|
||||
|
||||
@@ -18,6 +18,9 @@
|
||||
#include <__functional/compose.h>
|
||||
#include <__functional/invoke.h>
|
||||
#include <__ranges/concepts.h>
|
||||
#include <__type_traits/decay.h>
|
||||
#include <__type_traits/is_nothrow_constructible.h>
|
||||
#include <__type_traits/remove_cvref.h>
|
||||
#include <__utility/forward.h>
|
||||
#include <__utility/move.h>
|
||||
|
||||
|
||||
@@ -31,7 +31,13 @@
|
||||
#include <__ranges/range_adaptor.h>
|
||||
#include <__ranges/size.h>
|
||||
#include <__ranges/view_interface.h>
|
||||
#include <__type_traits/conditional.h>
|
||||
#include <__type_traits/decay.h>
|
||||
#include <__type_traits/is_nothrow_constructible.h>
|
||||
#include <__type_traits/is_object.h>
|
||||
#include <__type_traits/is_reference.h>
|
||||
#include <__type_traits/maybe_const.h>
|
||||
#include <__type_traits/remove_cvref.h>
|
||||
#include <__utility/forward.h>
|
||||
#include <__utility/in_place.h>
|
||||
#include <__utility/move.h>
|
||||
|
||||
@@ -30,6 +30,8 @@
|
||||
#include <__ranges/enable_borrowed_range.h>
|
||||
#include <__ranges/size.h>
|
||||
#include <__ranges/view_interface.h>
|
||||
#include <__type_traits/is_nothrow_move_constructible.h>
|
||||
#include <__type_traits/make_unsigned.h>
|
||||
#include <__utility/declval.h>
|
||||
#include <__utility/forward.h>
|
||||
#include <__utility/integer_sequence.h>
|
||||
|
||||
@@ -27,6 +27,7 @@
|
||||
#include <__type_traits/can_extract_key.h>
|
||||
#include <__type_traits/conditional.h>
|
||||
#include <__type_traits/is_const.h>
|
||||
#include <__type_traits/is_copy_constructible.h>
|
||||
#include <__type_traits/is_nothrow_copy_constructible.h>
|
||||
#include <__type_traits/is_nothrow_default_constructible.h>
|
||||
#include <__type_traits/is_nothrow_move_assignable.h>
|
||||
|
||||
@@ -1352,9 +1352,9 @@ module std [system] {
|
||||
module split_view { private header "__ranges/split_view.h" }
|
||||
module subrange {
|
||||
private header "__ranges/subrange.h"
|
||||
|
||||
module subrange_fwd { private header "__fwd/subrange.h" }
|
||||
export subrange_fwd
|
||||
}
|
||||
module subrange_fwd { private header "__fwd/subrange.h" }
|
||||
module take_view { private header "__ranges/take_view.h" }
|
||||
module take_while_view { private header "__ranges/take_while_view.h" }
|
||||
module transform_view {
|
||||
@@ -1558,7 +1558,10 @@ module std [system] {
|
||||
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_enum {
|
||||
private header "__type_traits/is_enum.h"
|
||||
export integral_constant
|
||||
}
|
||||
module is_equality_comparable {
|
||||
private header "__type_traits/is_equality_comparable.h"
|
||||
export integral_constant
|
||||
|
||||
@@ -185,18 +185,40 @@ namespace std {
|
||||
#include <__config>
|
||||
#include <__functional/hash.h>
|
||||
#include <__functional/invoke.h>
|
||||
#include <__functional/reference_wrapper.h>
|
||||
#include <__functional/unary_function.h>
|
||||
#include <__memory/addressof.h>
|
||||
#include <__memory/construct_at.h>
|
||||
#include <__tuple/sfinae_helpers.h>
|
||||
#include <__type_traits/add_pointer.h>
|
||||
#include <__type_traits/conditional.h>
|
||||
#include <__type_traits/conjunction.h>
|
||||
#include <__type_traits/decay.h>
|
||||
#include <__type_traits/disjunction.h>
|
||||
#include <__type_traits/is_array.h>
|
||||
#include <__type_traits/is_assignable.h>
|
||||
#include <__type_traits/is_constructible.h>
|
||||
#include <__type_traits/is_convertible.h>
|
||||
#include <__type_traits/is_copy_assignable.h>
|
||||
#include <__type_traits/is_copy_constructible.h>
|
||||
#include <__type_traits/is_destructible.h>
|
||||
#include <__type_traits/is_move_assignable.h>
|
||||
#include <__type_traits/is_move_constructible.h>
|
||||
#include <__type_traits/is_nothrow_move_assignable.h>
|
||||
#include <__type_traits/is_nothrow_move_constructible.h>
|
||||
#include <__type_traits/is_object.h>
|
||||
#include <__type_traits/is_reference.h>
|
||||
#include <__type_traits/is_scalar.h>
|
||||
#include <__type_traits/is_swappable.h>
|
||||
#include <__type_traits/is_trivially_copy_assignable.h>
|
||||
#include <__type_traits/is_trivially_copy_constructible.h>
|
||||
#include <__type_traits/is_trivially_destructible.h>
|
||||
#include <__type_traits/is_trivially_move_assignable.h>
|
||||
#include <__type_traits/is_trivially_move_constructible.h>
|
||||
#include <__type_traits/negation.h>
|
||||
#include <__type_traits/remove_const.h>
|
||||
#include <__type_traits/remove_cvref.h>
|
||||
#include <__type_traits/remove_reference.h>
|
||||
#include <__utility/declval.h>
|
||||
#include <__utility/forward.h>
|
||||
#include <__utility/in_place.h>
|
||||
|
||||
@@ -227,6 +227,7 @@ namespace std {
|
||||
#include <__type_traits/remove_cvref.h>
|
||||
#include <__type_traits/remove_reference.h>
|
||||
#include <__type_traits/type_identity.h>
|
||||
#include <cstddef>
|
||||
#include <iosfwd>
|
||||
#include <limits>
|
||||
#include <stdexcept>
|
||||
|
||||
@@ -208,8 +208,16 @@ template <class... Types>
|
||||
#include <__functional/invoke.h>
|
||||
#include <__functional/unwrap_ref.h>
|
||||
#include <__fwd/array.h>
|
||||
#include <__fwd/tuple.h>
|
||||
#include <__memory/allocator_arg_t.h>
|
||||
#include <__memory/uses_allocator.h>
|
||||
#include <__tuple/make_tuple_types.h>
|
||||
#include <__tuple/sfinae_helpers.h>
|
||||
#include <__tuple/tuple_element.h>
|
||||
#include <__tuple/tuple_indices.h>
|
||||
#include <__tuple/tuple_like_ext.h>
|
||||
#include <__tuple/tuple_size.h>
|
||||
#include <__tuple/tuple_types.h>
|
||||
#include <__type_traits/apply_cv.h>
|
||||
#include <__type_traits/common_reference.h>
|
||||
#include <__type_traits/common_type.h>
|
||||
|
||||
@@ -529,6 +529,7 @@ template <class Key, class T, class Hash, class Pred, class Alloc>
|
||||
#include <__memory_resource/polymorphic_allocator.h>
|
||||
#include <__node_handle>
|
||||
#include <__type_traits/is_allocator.h>
|
||||
#include <__type_traits/type_identity.h>
|
||||
#include <__utility/forward.h>
|
||||
#include <stdexcept>
|
||||
#include <tuple>
|
||||
|
||||
Reference in New Issue
Block a user