Packages

case class Evaluator(home: Path, outPath: Path, externalOutPath: Path, rootModule: BaseModule, baseLogger: ColorLogger, classLoaderSig: Seq[(Either[String, URL], Long)] = Evaluator.classLoaderSig, workerCache: Map[Segments, (Int, Any)] = mutable.Map.empty, env: Map[String, String] = Evaluator.defaultEnv, failFast: Boolean = true, threadCount: Option[Int] = Some(1)) extends Product with Serializable

Evaluate tasks.

outPath

The output base path.

externalOutPath

The output base path to use for external modules.

rootModule

The projects root module.

workerCache

Mutable worker cache.

failFast

If true the first failing task will fail the evaluation. If false, it tries to evaluate all tasks, running longer and reporting possibly more than one failure.

threadCount

If a Some the explicit number of threads to use for parallel task evaluation, or None to use n threads where n is the number of available logical processors.

Linear Supertypes
Serializable, Product, Equals, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Evaluator
  2. Serializable
  3. Product
  4. Equals
  5. AnyRef
  6. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new Evaluator(home: Path, outPath: Path, externalOutPath: Path, rootModule: BaseModule, baseLogger: ColorLogger, classLoaderSig: Seq[(Either[String, URL], Long)] = Evaluator.classLoaderSig, workerCache: Map[Segments, (Int, Any)] = mutable.Map.empty, env: Map[String, String] = Evaluator.defaultEnv, failFast: Boolean = true, threadCount: Option[Int] = Some(1))

    outPath

    The output base path.

    externalOutPath

    The output base path to use for external modules.

    rootModule

    The projects root module.

    workerCache

    Mutable worker cache.

    failFast

    If true the first failing task will fail the evaluation. If false, it tries to evaluate all tasks, running longer and reporting possibly more than one failure.

    threadCount

    If a Some the explicit number of threads to use for parallel task evaluation, or None to use n threads where n is the number of available logical processors.

Type Members

  1. type Terminal = Either[Task[_], Labelled[Any]]

    A terminal or terminal target is some important work unit, that in most cases has a name (Right[Labelled]) or was directly called by the user (Left[Task]).

    A terminal or terminal target is some important work unit, that in most cases has a name (Right[Labelled]) or was directly called by the user (Left[Task]). It's a T, T.worker, T.input, T.source, T.sources, T.persistent

  2. type TerminalGroup = (Terminal, api.Strict.Agg[Task[_]])

    A terminal target with all it's inner tasks.

    A terminal target with all it's inner tasks. To implement a terminal target, one can delegate to other/inner tasks (T.task), those are contained in the 2nd parameter of the tuple.

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. val baseLogger: ColorLogger
  6. val classLoaderSig: Seq[(Either[String, URL], Long)]
  7. val classLoaderSignHash: Int
  8. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  9. def destSegments(labelledTask: Labelled[_]): Segments
  10. val effectiveThreadCount: Int
  11. val env: Map[String, String]
  12. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  13. def evaluate(goals: api.Strict.Agg[Task[_]], reporter: (Int) => Option[CompileProblemReporter] = (int: Int) => Option.empty[CompileProblemReporter], testReporter: TestReporter = DummyTestReporter, logger: ColorLogger = baseLogger): Results

    goals

    The tasks that need to be evaluated

    reporter

    A function that will accept a module id and provide a listener for build problems in that module

    testReporter

    Listener for test events like start, finish with success/error

  14. def evaluateGroup(group: api.Strict.Agg[Task[_]], results: Map[Task[_], api.Result[(Any, Int)]], inputsHash: Int, paths: Option[EvaluatorPaths], maybeTargetLabel: Option[String], counterMsg: String, reporter: (Int) => Option[CompileProblemReporter], testReporter: TestReporter, logger: Logger): (LinkedHashMap[Task[_], api.Result[(Any, Int)]], Buffer[Task[_]])
    Attributes
    protected
  15. def evaluateGroupCached(terminal: Terminal, group: api.Strict.Agg[Task[_]], results: Map[Task[_], api.Result[(Any, Int)]], counterMsg: String, zincProblemReporter: (Int) => Option[CompileProblemReporter], testReporter: TestReporter, logger: ColorLogger): Evaluated
    Attributes
    protected
  16. val externalOutPath: Path
  17. val failFast: Boolean
  18. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  19. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  20. def getFailing(sortedGroups: MultiBiMap[Either[Task[_], Labelled[Any]], Task[_]], results: Map[Task[_], api.Result[(Any, Int)]]): Mutable[Either[Task[_], Labelled[_]], Failing[_]]
  21. def handleTaskResult(v: Any, hashCode: Int, metaPath: Path, inputsHash: Int, labelledNamedTask: Labelled[_]): Unit
  22. val home: Path
  23. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  24. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  25. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  26. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  27. val outPath: Path
  28. def parallelEvaluate(goals: api.Strict.Agg[Task[_]], threadCount: Int, logger: ColorLogger, reporter: (Int) => Option[CompileProblemReporter] = (int: Int) => Option.empty[CompileProblemReporter], testReporter: TestReporter = DummyTestReporter): Results
  29. val pathsResolver: EvaluatorPathsResolver
  30. def printTerm(term: Terminal): String
  31. def productElementNames: Iterator[String]
    Definition Classes
    Product
  32. def resolveLogger(logPath: Option[Path], logger: Logger): Logger
  33. val rootModule: BaseModule
  34. def sequentialEvaluate(goals: api.Strict.Agg[Task[_]], logger: ColorLogger, reporter: (Int) => Option[CompileProblemReporter] = (int: Int) => Option.empty[CompileProblemReporter], testReporter: TestReporter = DummyTestReporter): Results
  35. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  36. val threadCount: Option[Int]
  37. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  38. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  39. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  40. val workerCache: Map[Segments, (Int, Any)]

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from AnyRef

Inherited from Any

Ungrouped