object Def extends Init[Scope] with TaskMacroExtra with InitializeImplicits
A concrete settings system that uses sbt.Scope
for the scope type.
- Alphabetic
- By Inheritance
- Def
- InitializeImplicits
- InitializeImplicits0
- TaskMacroExtra
- Init
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
- type Classpath = Seq[Attributed[File]]
-
type
CompiledMap = Map[ScopedKey[_], Compiled[_]]
- Definition Classes
- Init
- final class InitOps[T] extends AnyVal
- final class InitTaskOps[T] extends AnyVal
-
type
MapConstant = ~>[ScopedKey, Option]
- Definition Classes
- Init
-
type
MapScoped = ~>[ScopedKey, ScopedKey]
- Definition Classes
- Init
-
type
ScopeLocal = (ScopedKey[_]) ⇒ Seq[Setting[_]]
- Definition Classes
- Init
-
type
ScopedMap = IMap[ScopedKey, SettingSeq]
- Definition Classes
- Init
-
type
SettingSeq[T] = Seq[Setting[T]]
- Definition Classes
- Init
-
type
ValidateRef = ~>[ScopedKey, ValidatedRef]
- Definition Classes
- Init
-
type
ValidatedInit[T] = Either[Seq[Undefined], Initialize[T]]
- Definition Classes
- Init
-
type
ValidatedRef[T] = Either[Undefined, ScopedKey[T]]
- Definition Classes
- Init
- type VirtualClasspath = Seq[Attributed[VirtualFile]]
-
final
class
Compiled[T] extends AnyRef
- Definition Classes
- Init
-
final
class
Flattened extends AnyRef
- Definition Classes
- Init
-
sealed
trait
Initialize[T] extends AnyRef
Abstractly defines a value of type
T
.Abstractly defines a value of type
T
.Specifically it defines a node in a task graph, where the
dependencies
represents dependent nodes, andevaluate
represents the calculation based on the existing body of knowledge.- T
the type of the value this defines.
- Definition Classes
- Init
-
sealed
trait
Keyed[S, T] extends Initialize[T]
An
Initialize[T]
associated with aScopedKey[S]
.An
Initialize[T]
associated with aScopedKey[S]
.- S
the type of the associated
ScopedKey
- T
the type of the value this
Initialize
defines.
- Definition Classes
- Init
-
trait
KeyedInitialize[T] extends Keyed[T, T]
A
Keyed
where the type of the value and the associatedScopedKey
are the same.A
Keyed
where the type of the value and the associatedScopedKey
are the same.- T
the type of both the value this
Initialize
defines and the type of the associatedScopedKey
.
- Definition Classes
- Init
-
final
class
RuntimeUndefined extends RuntimeException
- Definition Classes
- Init
-
sealed
case class
ScopedKey[T](scope: ScopeType, key: AttributeKey[T]) extends KeyedInitialize[T] with Product with Serializable
- Definition Classes
- Init
-
sealed
class
Setting[T] extends SettingsDefinition
- Definition Classes
- Init
-
final
class
SettingList extends SettingsDefinition
- Definition Classes
- Init
-
sealed
trait
SettingsDefinition extends AnyRef
- Definition Classes
- Init
-
final
class
Undefined extends AnyRef
- Definition Classes
- Init
-
final
class
Uninitialized extends Exception
- Definition Classes
- Init
Value Members
-
def
Undefined(defining: Setting[_], referencedKey: ScopedKey[_]): Undefined
- Definition Classes
- Init
-
def
Uninitialized(validKeys: Seq[ScopedKey[_]], delegates: (Scope) ⇒ Seq[Scope], keys: Seq[Undefined], runtime: Boolean)(implicit display: Show[ScopedKey[_]]): Uninitialized
- Definition Classes
- Init
-
def
add[T](m: ScopedMap, s: Setting[T]): ScopedMap
- Definition Classes
- Init
-
def
addLocal(init: Seq[Setting[_]])(implicit scopeLocal: ScopeLocal): Seq[Setting[_]]
- Definition Classes
- Init
-
def
app[K[L[x]], T](inputs: K[Initialize])(f: (K[internal.util.Types.Id]) ⇒ T)(implicit alist: AList[K]): Initialize[T]
- Definition Classes
- Init
-
def
append[T](ss: Seq[Setting[T]], s: Setting[T]): Seq[Setting[T]]
- Definition Classes
- Init
-
def
asFunction[T](s: Settings[Scope]): (ScopedKey[T]) ⇒ T
- Definition Classes
- Init
-
def
asTransform(s: Settings[Scope]): ~>[ScopedKey, internal.util.Types.Id]
- Definition Classes
- Init
-
def
bind[S, T](in: Initialize[S])(f: (S) ⇒ Initialize[T]): Initialize[T]
- Definition Classes
- Init
-
lazy val
capturedTransformations: Initialize[~>[Initialize, Initialize]]
The result of this initialization is the composition of applied transformations.
The result of this initialization is the composition of applied transformations. This can be useful when dealing with dynamic Initialize values.
- Definition Classes
- Init
-
def
compile(sMap: ScopedMap): CompiledMap
- Definition Classes
- Init
-
def
compiled(init: Seq[Setting[_]], actual: Boolean = true)(implicit delegates: (Scope) ⇒ Seq[Scope], scopeLocal: ScopeLocal, display: Show[ScopedKey[_]]): CompiledMap
- Definition Classes
- Init
-
def
definedAtString(settings: Seq[Setting[_]]): String
- Definition Classes
- Init
-
def
delegate(sMap: ScopedMap)(implicit delegates: (Scope) ⇒ Seq[Scope], display: Show[ScopedKey[_]]): ScopedMap
- Definition Classes
- Init
-
final
def
derive[T](s: Setting[T], allowDynamic: Boolean = false, filter: (Scope) ⇒ Boolean = const(true), trigger: (AttributeKey[_]) ⇒ Boolean = const(true), default: Boolean = false): Setting[T]
Constructs a derived setting that will be automatically defined in every scope where one of its dependencies is explicitly defined and the where the scope matches
filter
.Constructs a derived setting that will be automatically defined in every scope where one of its dependencies is explicitly defined and the where the scope matches
filter
. A setting initialized with dynamic dependencies is only allowed ifallowDynamic
is true. Only the static dependencies are tracked, however. Dependencies on previous values do not introduce a derived setting either.- Definition Classes
- Init
- def deriveAllowed[T](s: Setting[T], allowDynamic: Boolean): Option[String]
- def displayBuildRelative(currentBuild: URI, project: Reference): String
- def displayFull(scoped: ScopedKey[_], keyNameColor: Option[String]): String
- def displayFull(scoped: ScopedKey[_]): String
- def displayMasked(scoped: ScopedKey[_], mask: ScopeMask, showZeroConfig: Boolean): String
- def displayMasked(scoped: ScopedKey[_], mask: ScopeMask): String
- def displayRelative2(current: ProjectRef, project: Reference): String
-
def
displayRelativeReference(current: ProjectRef, project: Reference): String
Returns a String expression for the given Reference (BuildRef, ProjectRef, etc) relative to the current project.
-
def
empty(implicit delegates: (Scope) ⇒ Seq[Scope]): Settings[Scope]
- Definition Classes
- Init
-
def
flattenLocals(compiled: CompiledMap): Map[ScopedKey[_], Flattened]
- Definition Classes
- Init
-
def
getValue[T](s: Settings[Scope], k: ScopedKey[T]): T
- Definition Classes
- Init
-
def
grouped(init: Seq[Setting[_]]): ScopedMap
- Definition Classes
- Init
-
def
guessIntendedScope(validKeys: Seq[ScopedKey[_]], delegates: (Scope) ⇒ Seq[Scope], key: ScopedKey[_]): Option[ScopedKey[_]]
- Definition Classes
- Init
- def ifS[A](x: Initialize[Task[Boolean]])(t: Initialize[Task[A]])(e: Initialize[Task[A]]): Initialize[Task[A]]
-
implicit
def
initOps[T](x: Initialize[T]): InitOps[T]
- Definition Classes
- InitializeImplicits0
-
implicit
def
initTaskOps[T](x: Initialize[Task[T]]): InitTaskOps[T]
- Definition Classes
- InitializeImplicits
- macro def inputKey[T](description: String): InputKey[T]
- macro def inputTask[T](t: T): Initialize[InputTask[T]]
- macro def inputTaskDyn[T](t: Initialize[Task[T]]): Initialize[InputTask[T]]
-
def
intersect(s1: Scope, s2: Scope)(implicit delegates: (Scope) ⇒ Seq[Scope]): Option[Scope]
Intersects two scopes, returning the more specific one if they intersect, or None otherwise.
- implicit def macroPrevious[T](in: TaskKey[T]): MacroPrevious[T]
- implicit def macroValueI[T](in: Initialize[T]): MacroValue[T]
- implicit def macroValueIInT[T](in: Initialize[InputTask[T]]): InputEvaluated[T]
- implicit def macroValueIT[T](in: Initialize[Task[T]]): MacroValue[T]
-
implicit
def
macroValueIn[T](in: InputTask[T]): InputEvaluated[T]
- Definition Classes
- TaskMacroExtra
-
implicit
def
macroValueT[T](in: Task[T]): MacroValue[T]
- Definition Classes
- TaskMacroExtra
-
def
makeWithCompiledMap(init: Seq[Setting[_]])(implicit delegates: (Scope) ⇒ Seq[Scope], scopeLocal: ScopeLocal, display: Show[ScopedKey[_]]): (CompiledMap, Settings[Scope])
- Definition Classes
- Init
-
def
map[S, T](in: Initialize[S])(f: (S) ⇒ T): Initialize[T]
- Definition Classes
- Init
-
def
mapScope(f: (Scope) ⇒ Scope): MapScoped
- Definition Classes
- Init
-
def
optional[T, U](i: Initialize[T])(f: (Option[T]) ⇒ U): Initialize[U]
- Definition Classes
- Init
- implicit def parserInitStateToInput[T](p: Initialize[(State) ⇒ Parser[T]]): ParserInput[T]
- implicit def parserInitToInput[T](p: Initialize[Parser[T]]): ParserInput[T]
-
implicit
def
parserToInput[T](in: Parser[T]): ParserInput[T]
- Definition Classes
- TaskMacroExtra
-
def
promise[A]: PromiseWrap[A]
Returns
PromiseWrap[A]
, which is a wrapper aroundscala.concurrent.Promise
.Returns
PromiseWrap[A]
, which is a wrapper aroundscala.concurrent.Promise
. When a task is typed promise (e.g.Def.Initialize[Task[PromiseWrap[A]]]
),an implicit method calledawait
is injected which will run in a thread outside of concurrent restriction budget. -
def
pure[T](value: () ⇒ T): Initialize[T]
- Definition Classes
- Init
-
def
refinedDistance(delegates: (Scope) ⇒ Seq[Scope], a: ScopedKey[_], b: ScopedKey[_]): Option[Int]
- Definition Classes
- Init
- val resolvedScoped: SettingKey[ScopedKey[_]]
- val runBefore: AttributeKey[Seq[Task[_]]]
- macro def setting[T](t: T): Initialize[T]
-
def
setting[T](key: ScopedKey[T], init: Initialize[T], pos: SourcePosition = NoPosition): Setting[T]
- Definition Classes
- Init
- macro def settingDyn[T](t: Initialize[T]): Initialize[T]
- macro def settingKey[T](description: String): SettingKey[T]
- def settings(ss: SettingsDefinition*): Seq[Setting[_]]
- def showBuildRelativeKey2(currentBuild: URI, keyNameColor: Option[String] = None): Show[ScopedKey[_]]
-
def
showFullKey(keyNameColor: Option[String]): Show[ScopedKey[_]]
The Show instance used when a detailed String needs to be generated.
The Show instance used when a detailed String needs to be generated. It is typically used when no context is available.
-
lazy val
showFullKey: Show[ScopedKey[_]]
The Show instance used when a detailed String needs to be generated.
- def showRelativeKey2(current: ProjectRef, keyNameColor: Option[String] = None): Show[ScopedKey[_]]
-
def
showUndefined(u: Undefined, validKeys: Seq[ScopedKey[_]], delegates: (Scope) ⇒ Seq[Scope])(implicit display: Show[ScopedKey[_]]): String
- Definition Classes
- Init
-
def
sort(cMap: CompiledMap): Seq[Compiled[_]]
- Definition Classes
- Init
-
def
spaceDelimited(argLabel: String = "<arg>"): Parser[Seq[String]]
A default Parser for splitting input into space-separated arguments.
A default Parser for splitting input into space-separated arguments.
argLabel
is an optional, fixed label shown for an argument during tab completion. -
implicit
def
stateParserToInput[T](in: (State) ⇒ Parser[T]): ParserInput[T]
- Definition Classes
- TaskMacroExtra
- macro def task[T](t: T): Initialize[Task[T]]
- macro def taskDyn[T](t: Initialize[Task[T]]): Initialize[Task[T]]
- macro def taskIf[T](a: T): Initialize[Task[T]]
- macro def taskKey[T](description: String): TaskKey[T]
- implicit def taskMacroValueIT[T](in: Initialize[Task[T]]): MacroTaskValue[T]
- def toIParser[T](p: Initialize[InputTask[T]]): Initialize[(State) ⇒ Parser[Task[T]]]
- def toISParser[T](p: Initialize[Parser[T]]): Initialize[(State) ⇒ Parser[T]]
-
def
toITask[T](i: Initialize[T]): Initialize[Task[T]]
Lifts the result of a setting initialization into a Task.
- def toSParser[T](p: Parser[T]): (State) ⇒ Parser[T]
- val triggeredBy: AttributeKey[Seq[Task[_]]]
-
def
uniform[S, T](inputs: Seq[Initialize[S]])(f: (Seq[S]) ⇒ T): Initialize[T]
- Definition Classes
- Init
-
def
unit(a: Any): Unit
This works around Scala 2.12.12's "a pure expression does nothing in statement position"
This works around Scala 2.12.12's "a pure expression does nothing in statement position"
Def.unit(copyResources.value) Def.unit(compile.value)
-
def
update[T](key: ScopedKey[T])(f: (T) ⇒ T): Setting[T]
- Definition Classes
- Init
-
def
value[T](value: ⇒ T): Initialize[T]
- Definition Classes
- Init
-
def
valueStrict[T](value: T): Initialize[T]
- Definition Classes
- Init
- def withColor(s: String, color: Option[String], useColor: Boolean): String
- def withColor(s: String, color: Option[String]): String
-
object
DefaultSetting
- Definition Classes
- Init
-
object
Initialize
- Definition Classes
- Init
-
object
SettingsDefinition
- Definition Classes
- Init
Deprecated Value Members
-
def
displayBuildRelative(currentBuild: URI, multi: Boolean, project: Reference): String
- Annotations
- @deprecated
- Deprecated
(Since version 1.1.1) Use variant without multi
-
def
displayRelative(current: ProjectRef, multi: Boolean, project: Reference): String
- Annotations
- @deprecated
- Deprecated
(Since version 1.1.1) Use displayRelative2 which doesn't take the unused multi param
-
def
make(init: Seq[Setting[_]])(implicit delegates: (Scope) ⇒ Seq[Scope], scopeLocal: ScopeLocal, display: Show[ScopedKey[_]]): Settings[Scope]
- Definition Classes
- Init
- Annotations
- @deprecated
- Deprecated
(Since version 1.4.0) Use makeWithCompiledMap
-
def
showBuildRelativeKey(currentBuild: URI, multi: Boolean, keyNameColor: Option[String] = None): Show[ScopedKey[_]]
- Annotations
- @deprecated
- Deprecated
(Since version 1.1.1) Use showBuildRelativeKey2 which doesn't take the unused multi param
-
def
showRelativeKey(current: ProjectRef, multi: Boolean, keyNameColor: Option[String] = None): Show[ScopedKey[_]]
- Annotations
- @deprecated
- Deprecated
(Since version 1.1.1) Use showRelativeKey2 which doesn't take the unused multi param