/// <inheritdoc />
 public override void ProjectLeftToRight(object left, object right)
 {
     if (ShouldProject(left, right, out var newValue, out _))
     {
         RightSetter.Invoke(right, newValue);
     }
 }
Ejemplo n.º 2
0
        public override int GetHashCode()
        {
            var hashCode = 0;

            unchecked
            {
                if (LeftContext != null)
                {
                    hashCode = (23 * hashCode) + LeftContext.GetHashCode();
                }
                if (LeftValue != null)
                {
                    hashCode = (23 * hashCode) + LeftValue.GetHashCode();
                }
                if (LeftSetter != null)
                {
                    hashCode = (23 * hashCode) + LeftSetter.GetHashCode();
                }
                if (RightValue != null)
                {
                    hashCode = (23 * hashCode) + RightValue.GetHashCode();
                }
                if (RightSetter != null)
                {
                    hashCode = (23 * hashCode) + RightSetter.GetHashCode();
                }
                if (RightContext != null)
                {
                    hashCode = (23 * hashCode) + RightContext.GetHashCode();
                }
            }
            return(hashCode);
        }