gfe-relnote:  Refactor QuicConnectionCloseFrame.  Not protected.

QuicConnectionCloseFrame::quic_error_code should not be accessed when using IETF
QUIC, however, as it is a public member, this is not enforced.  When read, it
returns the on-the-wire error code (transport or application) cast into a
QuicErrorCode.  This is bad.

Since public unions cannot enforce restrictions on access, I propose to remove
the union for clarity.  The price paid is type: wire_error_code will now be
uint64_t even for Google QUIC error codes which could be QuicErrorCode, and for
IETF QUIC transport errors, which could be QuicIetfTransportErrorCodes.

Also rename extracted_error_code to quic_error_code for clarity, because for
sent frames, it is not extracted.

This refactor is necessary for modifying QuicErrorCodeToTransportErrorCode() to
return IETF wire error codes.

When using Google QUIC, old fields |quic_error_code| and |extracted_error_code|
and new fields |wire_error_code| and |quic_error_code| should always have the
same value, therefore this refactor should not introduce any functional change.

PiperOrigin-RevId: 304902883
Change-Id: I586a92609fb8a6186310f6585c8d29ee1d60af4f
diff --git a/quic/core/quic_framer.h b/quic/core/quic_framer.h
index 746e6a1..f0c694a 100644
--- a/quic/core/quic_framer.h
+++ b/quic/core/quic_framer.h
@@ -1097,9 +1097,10 @@
 // This text, inserted by the peer if it's using Google's QUIC implementation,
 // contains additional error information that narrows down the exact error. The
 // extracted error code and (possibly updated) error_details string are returned
-// in |*frame|. If an error code is not found in the error details then the
-// extracted_error_code is set to QuicErrorCode::QUIC_IETF_GQUIC_ERROR_MISSING.
-// If there is an error code in the string then it is removed from the string.
+// in |*frame|. If an error code is not found in the error details, then
+// frame->quic_error_code is set to
+// QuicErrorCode::QUIC_IETF_GQUIC_ERROR_MISSING.  If there is an error code in
+// the string then it is removed from the string.
 QUIC_EXPORT_PRIVATE void MaybeExtractQuicErrorCode(
     QuicConnectionCloseFrame* frame);