[libc++][ranges]  Add ranges::in_in_out_result

Add `ranges::in_in_out_result`

Reviewed By: Quuxplusone, Mordante, #libc

Spies: CaseyCarter, libcxx-commits, mgorny

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

NOKEYCHECK=True
GitOrigin-RevId: f3514af492ee14a9f7f8cb88acc7b93ea0bb0ffc
diff --git a/include/algorithm b/include/algorithm
index 03b4faa..e5f1030 100644
--- a/include/algorithm
+++ b/include/algorithm
@@ -20,7 +20,10 @@
 
 namespace ranges {
   template <class I1, class I2>
-    struct in_in_result; // since C++20
+    struct in_in_result;     // since C++20
+
+  template <class I1, class I2, class O>
+    struct in_in_out_result; // since C++20
 }
 
 template <class InputIterator, class Predicate>
@@ -696,6 +699,7 @@
 #include <__algorithm/generate.h>
 #include <__algorithm/generate_n.h>
 #include <__algorithm/half_positive.h>
+#include <__algorithm/in_in_out_result.h>
 #include <__algorithm/in_in_result.h>
 #include <__algorithm/in_out_result.h>
 #include <__algorithm/includes.h>