host.go
func (h Host) Diff(altHost Host) (added []Port, removed []Port) {
	targetPorts := h.Ports
	altPorts := altHost.Ports

	addedWithClosed := array.Except(altPorts, targetPorts).([]Port)
	for _, add := range addedWithClosed {
		if add.State != "closed" {
			added = append(added, add)
		}
	}
	removedWithClosed := array.Except(targetPorts, altPorts).([]Port)
	for _, remove := range removedWithClosed {
		if remove.State != "closed" {
			removed = append(removed, remove)
		}
	}

	return
}
func (h Host) Diff(altHost Host) (added []Port, removed []Port) {
	targetPorts := h.Ports
	altPorts := altHost.Ports

	addedWithClosed := array.Except(altPorts, targetPorts).([]Port)
	for _, add := range addedWithClosed {
		if add.State != "closed" {
			added = append(added, add)
		}
	}
	removedWithClosed := array.Except(targetPorts, altPorts).([]Port)
	for _, remove := range removedWithClosed {
		if remove.State != "closed" {
			removed = append(removed, remove)
		}
	}

	return
}
func ( h Host ) Diff ( altHost Host ) ( added [ ] Port , removed [ ] Port ) { targetPorts := h . Ports altPorts := altHost . Ports addedWithClosed := array . Except ( altPorts , targetPorts ) . ( [ ] Port ) for _ , add := range addedWithClosed { if add . State != " " { added = append ( added , add ) } } removedWithClosed := array . Except ( targetPorts , altPorts ) . ( [ ] Port ) for _ , remove := range removedWithClosed { if remove . State != " " { removed = append ( removed , remove ) } } return }
// Diff gets the difference between the the target host and the argument host.
//The first returned value is the added ports and the second returned value is
// the removed ports.
Diff gets the difference between the the target host and the argument host . The first returned value is the added ports and the second returned value is the removed ports .