public override int GetHashCode() { int hash = 1; if (ResourceName.Length != 0) { hash ^= ResourceName.GetHashCode(); } if (name_ != null) { hash ^= Name.GetHashCode(); } if (Category != global::Google.Ads.GoogleAds.V2.Enums.GoogleAdsFieldCategoryEnum.Types.GoogleAdsFieldCategory.Unspecified) { hash ^= Category.GetHashCode(); } if (selectable_ != null) { hash ^= Selectable.GetHashCode(); } if (filterable_ != null) { hash ^= Filterable.GetHashCode(); } if (sortable_ != null) { hash ^= Sortable.GetHashCode(); } hash ^= selectableWith_.GetHashCode(); hash ^= attributeResources_.GetHashCode(); hash ^= metrics_.GetHashCode(); hash ^= segments_.GetHashCode(); hash ^= enumValues_.GetHashCode(); if (DataType != global::Google.Ads.GoogleAds.V2.Enums.GoogleAdsFieldDataTypeEnum.Types.GoogleAdsFieldDataType.Unspecified) { hash ^= DataType.GetHashCode(); } if (typeUrl_ != null) { hash ^= TypeUrl.GetHashCode(); } if (isRepeated_ != null) { hash ^= IsRepeated.GetHashCode(); } if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } return(hash); }