override fun intersectAndDiff()

in src/main/kotlin/jetbrains/buildServer/server/querylang/ast/EvalResult.kt [57:67]


    override fun intersectAndDiff(other: ObjectContainer<T>): Triple<ObjectContainer<T>, ObjectContainer<T>, ObjectContainer<T>> {
        if (other.size < size) {
            val (a, b, c) = other.intersectAndDiff(this)
            return Triple(a, c, b)
        }

        val inter = SimpleObjectContainer<T>(emptyList())

        internalSet.forEach { elem -> if (other.remove(elem)) {this.remove(elem); inter.add(elem)} }
        return Triple(inter, this, other)
    }