Пример #1
0
        /// <summary>
        /// Equalses the specified other.
        /// </summary>
        /// <param name="other">The other.</param>
        /// <returns></returns>
        private bool EqualsHelper(InvokeMemberName other)
        {
            var tGenArgs      = GenericArgs;
            var tOtherGenArgs = other.GenericArgs;


            return(Equals(other.Name, Name) &&
                   !(other.IsSpecialName ^ IsSpecialName) &&
                   !(tOtherGenArgs == null ^ tGenArgs == null) &&
                   (tGenArgs == null ||
                    //Exclusive Or makes sure this doesn't happen
                    // ReSharper disable AssignNullToNotNullAttribute
                    tGenArgs.SequenceEqual(tOtherGenArgs)));
            // ReSharper restore AssignNullToNotNullAttribute
        }
Пример #2
0
        /// <summary>
        /// Equalses the specified other.
        /// </summary>
        /// <param name="other">The other.</param>
        /// <returns></returns>
        private bool EqualsHelper(InvokeMemberName other)
        {

            var tGenArgs = GenericArgs;
            var tOtherGenArgs = other.GenericArgs;


            return Equals(other.Name, Name)
                && !(other.IsSpecialName ^ IsSpecialName)
                && !(tOtherGenArgs == null ^ tGenArgs == null)
                && (tGenArgs == null ||
                //Exclusive Or makes sure this doesn't happen
                // ReSharper disable AssignNullToNotNullAttribute
                tGenArgs.SequenceEqual(tOtherGenArgs));
            // ReSharper restore AssignNullToNotNullAttribute
        }
Пример #3
0
 /// <summary>
 /// Equalses the specified other.
 /// </summary>
 /// <param name="other">The other.</param>
 /// <returns></returns>
 public bool Equals(InvokeMemberName other)
 {
     if (ReferenceEquals(null, other)) return false;
     if (ReferenceEquals(this, other)) return true;
     return EqualsHelper(other);
 }