Esempio n. 1
0
        /// <summary>
        /// Returns true if Solution instances are equal
        /// </summary>
        /// <param name="input">Instance of Solution to be compared</param>
        /// <returns>Boolean</returns>
        public bool Equals(Solution input)
        {
            if (input == null)
            {
                return(false);
            }

            return
                ((
                     Costs == input.Costs ||
                     (Costs != null &&
                      Costs.Equals(input.Costs))
                     ) &&
                 (
                     Distance == input.Distance ||
                     (Distance != null &&
                      Distance.Equals(input.Distance))
                 ) &&
                 (
                     Time == input.Time ||
                     (Time != null &&
                      Time.Equals(input.Time))
                 ) &&
                 (
                     TransportTime == input.TransportTime ||
                     (TransportTime != null &&
                      TransportTime.Equals(input.TransportTime))
                 ) &&
                 (
                     MaxOperationTime == input.MaxOperationTime ||
                     (MaxOperationTime != null &&
                      MaxOperationTime.Equals(input.MaxOperationTime))
                 ) &&
                 (
                     WaitingTime == input.WaitingTime ||
                     (WaitingTime != null &&
                      WaitingTime.Equals(input.WaitingTime))
                 ) &&
                 (
                     NoVehicles == input.NoVehicles ||
                     (NoVehicles != null &&
                      NoVehicles.Equals(input.NoVehicles))
                 ) &&
                 (
                     NoUnassigned == input.NoUnassigned ||
                     (NoUnassigned != null &&
                      NoUnassigned.Equals(input.NoUnassigned))
                 ) &&
                 (
                     Routes == input.Routes ||
                     Routes != null &&
                     Routes.SequenceEqual(input.Routes)
                 ) &&
                 (
                     Unassigned == input.Unassigned ||
                     (Unassigned != null &&
                      Unassigned.Equals(input.Unassigned))
                 ));
        }