gfe-relnote: Remove the dependency from QuicMemSliceSpan to QuicStreamSendBuffer and QuicMessageFrame. Refactor only, not protected.

Currently, the (conceptually low level) QuicMemSliceSpan depends on (conceptually high level) QuicStreamSendBuffer and QuicMessageFrame classes, via QuicMemSliceSpan::SaveMemSlicesInSendBuffer and QuicMemSliceSpan::SaveMemSlicesAsMessageData. This change replace those functions by a new QuicMemSliceSpan::ConsumeAll method, which takes a callback instead of directly referring to QuicStreamSendBuffer and QuicMessageFrame.

PiperOrigin-RevId: 240908280
Change-Id: I83c87037586252c1335f3f1e198e6b62915e5698
diff --git a/quic/platform/api/quic_mem_slice_span.h b/quic/platform/api/quic_mem_slice_span.h
index 781382e..4fdf059 100644
--- a/quic/platform/api/quic_mem_slice_span.h
+++ b/quic/platform/api/quic_mem_slice_span.h
@@ -29,16 +29,9 @@
 
   ~QuicMemSliceSpan() = default;
 
-  // Save data buffers to |send_buffer| and returns the amount of saved data.
-  // |send_buffer| will hold a reference to all data buffer.
-  QuicByteCount SaveMemSlicesInSendBuffer(QuicStreamSendBuffer* send_buffer) {
-    return impl_.SaveMemSlicesInSendBuffer(send_buffer);
-  }
-
-  // Save data buffers as message data in |message_frame|. |message_frame| will
-  // hold a reference to all data buffers.
-  void SaveMemSlicesAsMessageData(QuicMessageFrame* message_frame) {
-    impl_.SaveMemSlicesAsMessageData(message_frame);
+  template <typename ConsumeFunction>
+  QuicByteCount ConsumeAll(ConsumeFunction consume) {
+    return impl_.ConsumeAll(consume);
   }
 
   // Return data of the span at |index| by the form of a QuicStringPiece.