[libcxx][functional][modular] splices <functional> into modular headers

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

NOKEYCHECK=True
GitOrigin-RevId: 050b064f15ee56ee0b42c9b957a3dd0f32532394
diff --git a/include/module.modulemap b/include/module.modulemap
index 9c6c678..7549815 100644
--- a/include/module.modulemap
+++ b/include/module.modulemap
@@ -407,10 +407,32 @@
   module functional {
     header "functional"
     export *
+
     module __functional {
-      module hash           { header "__functional/hash.h"           }
-      module unary_function { header "__functional/unary_function.h" }
-      module unwrap_ref     { header "__functional/unwrap_ref.h"     }
+      module binary_function            { header "__functional/binary_function.h" }
+      module binary_negate              { header "__functional/binary_negate.h" }
+      module bind                       { header "__functional/bind.h" }
+      module bind_front                 { header "__functional/bind_front.h" }
+      module binder1st                  { header "__functional/binder1st.h" }
+      module binder2nd                  { header "__functional/binder2nd.h" }
+      module default_searcher           { header "__functional/default_searcher.h" }
+      module function                   { header "__functional/function.h" }
+      module hash                       { header "__functional/hash.h" }
+      module identity                   { header "__functional/identity.h" }
+      module invoke                     { header "__functional/invoke.h" }
+      module mem_fn                     { header "__functional/mem_fn.h"  }
+      module mem_fun_ref                { header "__functional/mem_fun_ref.h"  }
+      module not_fn                     { header "__functional/not_fn.h" }
+      module operations                 { header "__functional/operations.h" }
+      module perfect_forward            { header "__functional/perfect_forward.h" }
+      module pointer_to_binary_function { header "__functional/pointer_to_binary_function.h" }
+      module pointer_to_unary_function  { header "__functional/pointer_to_unary_function.h" }
+      module ranges_operations          { header "__functional/ranges_operations.h" }
+      module reference_wrapper          { header "__functional/reference_wrapper.h" }
+      module unary_function             { header "__functional/unary_function.h" }
+      module unary_negate               { header "__functional/unary_negate.h" }
+      module unwrap_ref                 { header "__functional/unwrap_ref.h" }
+      module weak_result_type           { header "__functional/weak_result_type.h" }
     }
   }
   module future {
@@ -507,6 +529,7 @@
       module addressof                { header "__memory/addressof.h"                }
       module allocation_guard         { header "__memory/allocation_guard.h"         }
       module allocator_traits         { header "__memory/allocator_traits.h"         }
+      module allocator_arg_t          { header "__memory/allocator_arg_t.h"          }
       module allocator                { header "__memory/allocator.h"                }
       module auto_ptr                 { header "__memory/auto_ptr.h"                 }
       module compressed_pair          { header "__memory/compressed_pair.h"          }
@@ -725,7 +748,6 @@
   module __debug             { header "__debug"             export * }
   module __errc              { header "__errc"              export * }
   module __function_like     { header "__function_like.h"   export * }
-  module __functional_base   { header "__functional_base"   export * }
   module __hash_table        { header "__hash_table"        export * }
   module __locale            { header "__locale"            export * }
   module __mutex_base        { header "__mutex_base"        export * }