Exemple #1
0
        /// <summary>
        /// Determines whether the specified objects are equal.
        /// </summary>
        /// <returns>
        /// true if the specified objects are equal; otherwise, false.
        /// </returns>
        /// <param name="x">
        /// The first object of type <see cref="IMaintainableMutableObject"/> to compare.
        /// </param>
        /// <param name="y">
        /// The second object of type <see cref="IMaintainableMutableObject"/> to compare.
        /// </param>
        public bool Equals(IMaintainableMutableObject x, IMaintainableMutableObject y)
        {
            if (ReferenceEquals(x, y))
            {
                return(true);
            }

            if (x == null || y == null)
            {
                return(false);
            }

            IStructureReference firstReference  = _fromMutable.Build(x);
            IStructureReference secondReference = _fromMutable.Build(y);

            return(firstReference.Equals(secondReference));
        }