From 6a1222ad063d1b5be069021d82efbc7e889a8062 Mon Sep 17 00:00:00 2001 From: kenji yoshida <6b656e6a69@gmail.com> Date: Sun, 17 May 2026 12:57:41 +0900 Subject: [PATCH] [2.x] fix: Remove explicit equals and hashCode in LabeledFunctions (#9228) --- .../scala/sbt/internal/LabeledFunctions.scala | 30 ------------------- 1 file changed, 30 deletions(-) diff --git a/main-command/src/main/scala/sbt/internal/LabeledFunctions.scala b/main-command/src/main/scala/sbt/internal/LabeledFunctions.scala index 31709ccef..0c7f585ec 100644 --- a/main-command/src/main/scala/sbt/internal/LabeledFunctions.scala +++ b/main-command/src/main/scala/sbt/internal/LabeledFunctions.scala @@ -108,44 +108,20 @@ private[sbt] object LabeledFunctions { private class LabeledFunction0[+R](private val f: () => R, label: String) extends (() => R) { override def apply(): R = f() override def toString: String = label - override def equals(o: Any): Boolean = o match { - case that: LabeledFunction0[R] @unchecked => this.f == that.f - case that: (() => R) @unchecked => this.f == that - case _ => false - } - override def hashCode: Int = f.hashCode } private class LabeledFunction1[-T, +R](private val f: T => R, label: String) extends (T => R) { override def apply(t: T): R = f(t) override def toString: String = label - override def equals(o: Any): Boolean = o match { - case that: LabeledFunction1[T, R] @unchecked => this.f == that.f - case that: (T => R) @unchecked => this.f == that - case _ => false - } - override def hashCode: Int = f.hashCode } private class LabeledFunction2[-T1, -T2, +R](private val f: (T1, T2) => R, label: String) extends ((T1, T2) => R) { override def apply(t1: T1, t2: T2): R = f(t1, t2) override def toString: String = label - override def equals(o: Any): Boolean = o match { - case that: LabeledFunction2[T1, T2, R] @unchecked => this.f == that.f - case that: ((T1, T2) => R) @unchecked => this.f == that - case _ => false - } - override def hashCode: Int = f.hashCode } private class LabeledFunction3[-T1, -T2, -T3, +R](private val f: (T1, T2, T3) => R, label: String) extends ((T1, T2, T3) => R) { override def apply(t1: T1, t2: T2, t3: T3): R = f(t1, t2, t3) override def toString: String = label - override def equals(o: Any): Boolean = o match { - case that: LabeledFunction3[T1, T2, T3, R] @unchecked => this.f == that.f - case that: ((T1, T2, T3) => R) @unchecked => this.f == that - case _ => false - } - override def hashCode: Int = f.hashCode } private class LabeledFunction4[-T1, -T2, -T3, T4, +R]( private val f: (T1, T2, T3, T4) => R, @@ -153,11 +129,5 @@ private[sbt] object LabeledFunctions { ) extends ((T1, T2, T3, T4) => R) { override def apply(t1: T1, t2: T2, t3: T3, t4: T4): R = f(t1, t2, t3, t4) override def toString: String = label - override def equals(o: Any): Boolean = o match { - case that: LabeledFunction4[T1, T2, T3, T4, R] @unchecked => this.f == that.f - case that: ((T1, T2, T3, T4) => R) @unchecked => this.f == that - case _ => false - } - override def hashCode: Int = f.hashCode } }