public override int GetHashCode() { int hash = 1; if (TraceId != 0UL) { hash ^= TraceId.GetHashCode(); } if (messagePieceCase_ == MessagePieceOneofCase.RequestHeaders) { hash ^= RequestHeaders.GetHashCode(); } if (messagePieceCase_ == MessagePieceOneofCase.RequestBodyChunk) { hash ^= RequestBodyChunk.GetHashCode(); } if (messagePieceCase_ == MessagePieceOneofCase.RequestTrailers) { hash ^= RequestTrailers.GetHashCode(); } if (messagePieceCase_ == MessagePieceOneofCase.ResponseHeaders) { hash ^= ResponseHeaders.GetHashCode(); } if (messagePieceCase_ == MessagePieceOneofCase.ResponseBodyChunk) { hash ^= ResponseBodyChunk.GetHashCode(); } if (messagePieceCase_ == MessagePieceOneofCase.ResponseTrailers) { hash ^= ResponseTrailers.GetHashCode(); } hash ^= (int)messagePieceCase_; if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } return(hash); }