public virtual bool Equals()

in messages/csharp/src/Deltix.Timebase.Messages/EPAM.Deltix.Timebase.Messages.Schema/SchemaDescriptorChangeAction.cs [579:669]


        public virtual bool Equals(SchemaDescriptorChangeAction obj)
        {
            if ((obj == null))
            {
                return false;
            }
            if (((this.PreviousState != null) 
                        && (obj.PreviousState != null)))
            {
                if ((this.PreviousState.Equals(obj.PreviousState) != true))
                {
                    return false;
                }
            }
            else
            {
                if ((this.PreviousState != obj.PreviousState))
                {
                    return false;
                }
            }
            if (((this.NewState != null) 
                        && (obj.NewState != null)))
            {
                if ((this.NewState.Equals(obj.NewState) != true))
                {
                    return false;
                }
            }
            else
            {
                if ((this.NewState != obj.NewState))
                {
                    return false;
                }
            }
            if ((this.ChangeTypes != obj.ChangeTypes))
            {
                return false;
            }
            if (((this.DescriptorTransformation != null) 
                        && (obj.DescriptorTransformation != null)))
            {
                if ((this.DescriptorTransformation.Equals(obj.DescriptorTransformation) != true))
                {
                    return false;
                }
            }
            else
            {
                if ((this.DescriptorTransformation != obj.DescriptorTransformation))
                {
                    return false;
                }
            }
            if (((this.FieldChangeActions != null) 
                        && (obj.FieldChangeActions != null)))
            {
                if ((this.FieldChangeActions.Count != obj.FieldChangeActions.Count))
                {
                    return false;
                }
                int i;
                for (i = 0; (i < obj.FieldChangeActions.Count); i = (i + 1))
                {
                    if (((this.FieldChangeActions[i] != null) 
                                && (obj.FieldChangeActions[i] != null)))
                    {
                        if ((this.FieldChangeActions[i].Equals(obj.FieldChangeActions[i]) != true))
                        {
                            return false;
                        }
                    }
                    else
                    {
                        if ((this.FieldChangeActions[i] != obj.FieldChangeActions[i]))
                        {
                            return false;
                        }
                    }
                }
            }
            else
            {
                if ((this.FieldChangeActions != obj.FieldChangeActions))
                {
                    return false;
                }
            }
            return true;
        }