blob: 718a30e6a5fcf9f6374c5e6826c36333cc923ce4 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
package mill.main
import mill.eval.Evaluator
case class Tasks[T](value: Seq[mill.define.NamedTask[T]])
object Tasks{
class Scopt[T]() extends scopt.Read[Tasks[T]] {
def arity = 1
def reads = s => {
RunScript.resolveTasks(
mill.main.ResolveTasks,
Evaluator.currentEvaluator.get,
Seq(s),
multiSelect = false
) match{
case Left(err) => throw new Exception(err)
case Right(tasks) => Tasks(tasks).asInstanceOf[Tasks[T]]
}
}
}
}
class EvaluatorScopt[T]()
extends scopt.Read[mill.eval.Evaluator]{
def arity = 0
def reads = s => {
Evaluator.currentEvaluator.get.asInstanceOf[mill.eval.Evaluator]
}
}
|