[libc++][charconv] Granularizes the header.

Having the header granularized makes it possible to remove the
dependency on this header in <format>. This <format> header gets
included in more headers due to more usage of std::formatter in the
library. This should reduce the number of transitive includes.

Note formatting the new headers will be done in a followup patch.

Reviewed By: #libc, ldionne

Differential Revision: https://reviews.llvm.org/D145590
This commit is contained in:
Mark de Wever
2023-03-08 17:08:04 +01:00
parent c416234c38
commit f7efcaca77
12 changed files with 939 additions and 746 deletions

View File

@@ -687,11 +687,16 @@ module std [system] {
export *
module __charconv {
module chars_format { private header "__charconv/chars_format.h" }
module from_chars_result { private header "__charconv/from_chars_result.h" }
module tables { private header "__charconv/tables.h" }
module to_chars_base_10 { private header "__charconv/to_chars_base_10.h" }
module to_chars_result { private header "__charconv/to_chars_result.h" }
module chars_format { private header "__charconv/chars_format.h" }
module from_chars_integral { private header "__charconv/from_chars_integral.h" }
module from_chars_result { private header "__charconv/from_chars_result.h" }
module tables { private header "__charconv/tables.h" }
module to_chars { private header "__charconv/to_chars.h" }
module to_chars_base_10 { private header "__charconv/to_chars_base_10.h" }
module to_chars_floating_point { private header "__charconv/to_chars_floating_point.h" }
module to_chars_integral { private header "__charconv/to_chars_integral.h" }
module to_chars_result { private header "__charconv/to_chars_result.h" }
module traits { private header "__charconv/traits.h" }
}
}