mirror of https://github.com/sbt/sbt.git
Merge pull request #8260 from eed3si9n/wip/remove
[2.x] fix: Fixes removeN operator --=
This commit is contained in:
commit
92fdc29de6
|
|
@ -184,14 +184,14 @@ sealed abstract class TaskKey[A1]
|
||||||
inline def <++=[A2](vs: Initialize[Task[A2]]): Setting[Task[A1]] =
|
inline def <++=[A2](vs: Initialize[Task[A2]]): Setting[Task[A1]] =
|
||||||
${ TaskMacro.fakeAppendNImpl }
|
${ TaskMacro.fakeAppendNImpl }
|
||||||
|
|
||||||
final inline def -=[A2](v: A2)(using Remove.Value[A1, A2]): Setting[Task[A1]] =
|
final inline def -=[A2](inline v: A2)(using Remove.Value[A1, A2]): Setting[Task[A1]] =
|
||||||
remove1[A2](taskMacro[A2](v))
|
remove1[A2](taskMacro[A2](v))
|
||||||
|
|
||||||
final inline def remove1[A2](v: Initialize[Task[A2]])(using
|
final inline def remove1[A2](v: Initialize[Task[A2]])(using
|
||||||
ev: Remove.Value[A1, A2]
|
ev: Remove.Value[A1, A2]
|
||||||
): Setting[Task[A1]] = make(v)(ev.removeValue)
|
): Setting[Task[A1]] = make(v)(ev.removeValue)
|
||||||
|
|
||||||
final inline def --=[A2](vs: A2)(using r: Remove.Values[A1, A2]): Setting[Task[A1]] =
|
final inline def --=[A2](inline vs: A2)(using r: Remove.Values[A1, A2]): Setting[Task[A1]] =
|
||||||
removeN[A2](taskMacro[A2](vs))
|
removeN[A2](taskMacro[A2](vs))
|
||||||
|
|
||||||
final inline def removeN[A2](vs: Initialize[Task[A2]])(using
|
final inline def removeN[A2](vs: Initialize[Task[A2]])(using
|
||||||
|
|
|
||||||
|
|
@ -4,25 +4,36 @@ val intsFromScalaV = settingKey[Seq[Int]]("a seq of ints from scalaVersion")
|
||||||
val intsSetSetting = settingKey[Set[Int]]("A set of ints setting")
|
val intsSetSetting = settingKey[Set[Int]]("A set of ints setting")
|
||||||
val stringIntMapSetting = settingKey[Map[String, Int]]("A map of string to int setting")
|
val stringIntMapSetting = settingKey[Map[String, Int]]("A map of string to int setting")
|
||||||
|
|
||||||
scalaVersion := "2.11.6"
|
lazy val intSetting2 = Def.setting {
|
||||||
|
3
|
||||||
|
}
|
||||||
|
lazy val intsSetting2 = Def.setting {
|
||||||
|
Seq(1, 2, 3)
|
||||||
|
}
|
||||||
|
|
||||||
|
scalaVersion := "3.7.2"
|
||||||
|
|
||||||
intsTask := Seq(1, 2, 3, 4, 5, 6, 7)
|
intsTask := Seq(1, 2, 3, 4, 5, 6, 7)
|
||||||
intsTask -= 3
|
intsTask -= 3
|
||||||
intsTask --= Seq(1, 2)
|
intsTask --= Seq(1, 2)
|
||||||
intsTask -= Option(6)
|
intsTask -= Option(6)
|
||||||
intsTask --= Option(7)
|
intsTask --= Option(7)
|
||||||
|
intsTask -= intSetting2.value
|
||||||
|
intsTask --= intsSetting2.value
|
||||||
|
|
||||||
intsSetting := Seq(1, 2, 3, 4, 5, 6, 7)
|
intsSetting := Seq(1, 2, 3, 4, 5, 6, 7)
|
||||||
intsSetting -= 3
|
intsSetting -= 3
|
||||||
intsSetting --= Seq(1, 2)
|
intsSetting --= Seq(1, 2)
|
||||||
intsSetting -= Option(6)
|
intsSetting -= Option(6)
|
||||||
intsSetting --= Option(7)
|
intsSetting --= Option(7)
|
||||||
|
intsSetting -= intSetting2.value
|
||||||
|
intsSetting --= intsSetting2.value
|
||||||
|
|
||||||
intsFromScalaV := Seq(1, 2, 3, 4, 5, 6, 7)
|
intsFromScalaV := Seq(1, 2, 3, 4, 5, 6, 7)
|
||||||
intsFromScalaV -= { if (scalaVersion.value == "2.11.6") 3 else 5 }
|
intsFromScalaV -= { if scalaVersion.value == "3.7.2" then 3 else 5 }
|
||||||
intsFromScalaV --= { if (scalaVersion.value == "2.11.6") Seq(1, 2) else Seq(4) }
|
intsFromScalaV --= { if scalaVersion.value == "3.7.2" then Seq(1, 2) else Seq(4) }
|
||||||
intsFromScalaV -= { if (scalaVersion.value == "2.11.6") Option(6) else None }
|
intsFromScalaV -= { if scalaVersion.value == "3.7.2" then Option(6) else None }
|
||||||
intsFromScalaV --= { if (scalaVersion.value == "2.11.6") Option(7) else None }
|
intsFromScalaV --= { if scalaVersion.value == "3.7.2" then Option(7) else None }
|
||||||
|
|
||||||
intsSetSetting := Set(1, 2, 3, 4, 5, 6, 7)
|
intsSetSetting := Set(1, 2, 3, 4, 5, 6, 7)
|
||||||
intsSetSetting -= 3
|
intsSetSetting -= 3
|
||||||
|
|
@ -32,7 +43,9 @@ stringIntMapSetting := Map("a" -> 1, "b" -> 2 , "c" -> 3, "d" -> 4, "e" -> 5)
|
||||||
stringIntMapSetting -= "c"
|
stringIntMapSetting -= "c"
|
||||||
stringIntMapSetting --= Seq("a", "b")
|
stringIntMapSetting --= Seq("a", "b")
|
||||||
|
|
||||||
|
@transient
|
||||||
val check = taskKey[Unit]("Runs the check")
|
val check = taskKey[Unit]("Runs the check")
|
||||||
|
|
||||||
check := {
|
check := {
|
||||||
assert(intsTask.value == Seq(4, 5), s"intsTask should be Seq(4, 5) but is ${intsTask.value}")
|
assert(intsTask.value == Seq(4, 5), s"intsTask should be Seq(4, 5) but is ${intsTask.value}")
|
||||||
assert(intsSetting.value == Seq(4, 5), s"intsSetting should be Seq(4, 5) but is ${intsSetting.value}")
|
assert(intsSetting.value == Seq(4, 5), s"intsSetting should be Seq(4, 5) but is ${intsSetting.value}")
|
||||||
Loading…
Reference in New Issue