public override int GetHashCode() { #if NETCOREAPP return(HashCode.Combine(IsWin, IsCtrl, IsAlt, IsShift, Key)); #else unchecked // Overflow is fine, just wrap { int hash = 17; hash = hash * 23 + IsWin.GetHashCode(); hash = hash * 23 + IsCtrl.GetHashCode(); hash = hash * 23 + IsAlt.GetHashCode(); hash = hash * 23 + IsShift.GetHashCode(); hash = hash * 23 + Key.GetHashCode(); return(hash); } #endif }
public override int GetHashCode() { int hash = 1; if (state_ != null) { hash ^= State.GetHashCode(); } if (IsWin != false) { hash ^= IsWin.GetHashCode(); } hash ^= moveRating_.GetHashCode(); if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } return(hash); }