[libc++][format] Adds parser std-format-spec.

This implements the generic std.format.spec framework for all types.

The Unicode support will be added in a separate patch.

Implements parts of:
- P0645 Text Formatting

Completes:
- LWG-3242 std::format: missing rules for arg-id in width and precision
- P1892 Extended locale-specific presentation specifiers for std::format

Reviewed By: #libc, ldionne, vitaut

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

NOKEYCHECK=True
GitOrigin-RevId: a04a6ce7726b51c4f503c8de899362bee40d4e04
diff --git a/include/module.modulemap b/include/module.modulemap
index e49d78a..7a0d673 100644
--- a/include/module.modulemap
+++ b/include/module.modulemap
@@ -436,18 +436,19 @@
     export *
 
     module __format {
-      module format_arg           { private header "__format/format_arg.h"           }
-      module format_args          { private header "__format/format_args.h"          }
+      module format_arg             { private header "__format/format_arg.h"           }
+      module format_args            { private header "__format/format_args.h"          }
       module format_context {
         private header "__format/format_context.h"
         export optional
         export locale
       }
-      module format_error         { private header "__format/format_error.h"         }
-      module format_fwd           { private header "__format/format_fwd.h"           }
-      module format_parse_context { private header "__format/format_parse_context.h" }
-      module format_string        { private header "__format/format_string.h"        }
-      module formatter            { private header "__format/formatter.h"            }
+      module format_error           { private header "__format/format_error.h"           }
+      module format_fwd             { private header "__format/format_fwd.h"             }
+      module format_parse_context   { private header "__format/format_parse_context.h"   }
+      module format_string          { private header "__format/format_string.h"          }
+      module formatter              { private header "__format/formatter.h"              }
+      module parser_std_format_spec { private header "__format/parser_std_format_spec.h" }
     }
   }
   module forward_list {