Support HTTP/3 style of Server push.

Server push stream now has stream type of 0x01 encoded as variable length integer. It will be sent along with the first stream write. And the peer will open the incoming stream once the stream type byte is received.

Pending stream is enabled in this CL.

gfe-relnote: version 99 only. Not in production.
PiperOrigin-RevId: 249914001
Change-Id: I291d1cc98ce44f930722608f82f9829da033c213
diff --git a/quic/core/quic_session.h b/quic/core/quic_session.h
index 5e527f3..513ed9b 100644
--- a/quic/core/quic_session.h
+++ b/quic/core/quic_session.h
@@ -558,8 +558,9 @@
   }
 
   // Processes the stream type information of |pending| depending on
-  // different kinds of sessions' own rules.
-  virtual void ProcessPendingStream(PendingStream* pending) {}
+  // different kinds of sessions' own rules. Returns true if the pending stream
+  // is converted into a normal stream.
+  virtual bool ProcessPendingStream(PendingStream* pending) { return false; }
 
   bool eliminate_static_stream_map() const {
     return eliminate_static_stream_map_;