public override int GetHashCode()
        {
            int hash = 1;

            if (metricsCase_ == MetricsOneofCase.TranslationEvaluationMetrics)
            {
                hash ^= TranslationEvaluationMetrics.GetHashCode();
            }
            if (Name.Length != 0)
            {
                hash ^= Name.GetHashCode();
            }
            if (AnnotationSpecId.Length != 0)
            {
                hash ^= AnnotationSpecId.GetHashCode();
            }
            if (createTime_ != null)
            {
                hash ^= CreateTime.GetHashCode();
            }
            if (EvaluatedExampleCount != 0)
            {
                hash ^= EvaluatedExampleCount.GetHashCode();
            }
            hash ^= (int)metricsCase_;
            if (_unknownFields != null)
            {
                hash ^= _unknownFields.GetHashCode();
            }
            return(hash);
        }
        public override int GetHashCode()
        {
            int hash = 1;

            if (metricsCase_ == MetricsOneofCase.ClassificationEvaluationMetrics)
            {
                hash ^= ClassificationEvaluationMetrics.GetHashCode();
            }
            if (metricsCase_ == MetricsOneofCase.TranslationEvaluationMetrics)
            {
                hash ^= TranslationEvaluationMetrics.GetHashCode();
            }
            if (metricsCase_ == MetricsOneofCase.ImageObjectDetectionEvaluationMetrics)
            {
                hash ^= ImageObjectDetectionEvaluationMetrics.GetHashCode();
            }
            if (metricsCase_ == MetricsOneofCase.TextSentimentEvaluationMetrics)
            {
                hash ^= TextSentimentEvaluationMetrics.GetHashCode();
            }
            if (metricsCase_ == MetricsOneofCase.TextExtractionEvaluationMetrics)
            {
                hash ^= TextExtractionEvaluationMetrics.GetHashCode();
            }
            if (Name.Length != 0)
            {
                hash ^= Name.GetHashCode();
            }
            if (AnnotationSpecId.Length != 0)
            {
                hash ^= AnnotationSpecId.GetHashCode();
            }
            if (DisplayName.Length != 0)
            {
                hash ^= DisplayName.GetHashCode();
            }
            if (createTime_ != null)
            {
                hash ^= CreateTime.GetHashCode();
            }
            if (EvaluatedExampleCount != 0)
            {
                hash ^= EvaluatedExampleCount.GetHashCode();
            }
            hash ^= (int)metricsCase_;
            if (_unknownFields != null)
            {
                hash ^= _unknownFields.GetHashCode();
            }
            return(hash);
        }
        public void MergeFrom(ModelEvaluation other)
        {
            if (other == null)
            {
                return;
            }
            if (other.Name.Length != 0)
            {
                Name = other.Name;
            }
            if (other.AnnotationSpecId.Length != 0)
            {
                AnnotationSpecId = other.AnnotationSpecId;
            }
            if (other.createTime_ != null)
            {
                if (createTime_ == null)
                {
                    CreateTime = new global::Google.Protobuf.WellKnownTypes.Timestamp();
                }
                CreateTime.MergeFrom(other.CreateTime);
            }
            if (other.EvaluatedExampleCount != 0)
            {
                EvaluatedExampleCount = other.EvaluatedExampleCount;
            }
            switch (other.MetricsCase)
            {
            case MetricsOneofCase.TranslationEvaluationMetrics:
                if (TranslationEvaluationMetrics == null)
                {
                    TranslationEvaluationMetrics = new global::Google.Cloud.AutoML.V1.TranslationEvaluationMetrics();
                }
                TranslationEvaluationMetrics.MergeFrom(other.TranslationEvaluationMetrics);
                break;
            }

            _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
        }