Switch inThisBuild (+friends) to use varargs SettingsDefinition

This commit is contained in:
Dale Wijnand 2018-04-19 09:47:02 +01:00
parent 54a6262f7f
commit f459b218c4
No known key found for this signature in database
GPG Key ID: 4F256E3D151DF5EF
1 changed files with 11 additions and 9 deletions

View File

@ -32,7 +32,7 @@ import Keys.{
watch
}
import Scope.{ Global, ThisScope }
import Def.{ Flattened, Initialize, ScopedKey, Setting }
import Def.{ Flattened, Initialize, ScopedKey, Setting, SettingsDefinition }
import sbt.internal.{
Load,
BuildStructure,
@ -863,17 +863,19 @@ trait ProjectExtra {
implicit def richTaskSessionVar[T](init: Initialize[Task[T]]): Project.RichTaskSessionVar[T] =
new Project.RichTaskSessionVar(init)
def inThisBuild(ss: Seq[Setting[_]]): Seq[Setting[_]] =
inScope(ThisScope.copy(project = Select(ThisBuild)))(ss)
def inThisBuild(ss: SettingsDefinition*): Seq[Setting[_]] =
inScope(ThisScope.copy(project = Select(ThisBuild)))(ss flatMap (_.settings))
def inConfig(conf: Configuration)(ss: Seq[Setting[_]]): Seq[Setting[_]] =
inScope(ThisScope.copy(config = Select(conf)))((configuration :== conf) +: ss)
def inConfig(conf: Configuration)(ss: SettingsDefinition*): Seq[Setting[_]] =
inScope(ThisScope.copy(config = Select(conf)))(
(configuration :== conf) +: (ss flatMap (_.settings))
)
def inTask(t: Scoped)(ss: Seq[Setting[_]]): Seq[Setting[_]] =
inScope(ThisScope.copy(task = Select(t.key)))(ss)
def inTask(t: Scoped)(ss: SettingsDefinition*): Seq[Setting[_]] =
inScope(ThisScope.copy(task = Select(t.key)))(ss flatMap (_.settings))
def inScope(scope: Scope)(ss: Seq[Setting[_]]): Seq[Setting[_]] =
Project.transform(Scope.replaceThis(scope), ss)
def inScope(scope: Scope)(ss: SettingsDefinition*): Seq[Setting[_]] =
Project.transform(Scope.replaceThis(scope), ss flatMap (_.settings))
private[sbt] def inThisBuild[T](i: Initialize[T]): Initialize[T] =
inScope(ThisScope.copy(project = Select(ThisBuild)), i)