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
|
package mill.scalaplugin
sealed trait Dep
object Dep{
def apply(org: String, name: String, version: String): Dep = {
this(coursier.Dependency(coursier.Module(org, name), version))
}
case class Java(dep: coursier.Dependency) extends Dep
object Java{
def apply(org: String, name: String, version: String): Dep = {
Java(coursier.Dependency(coursier.Module(org, name), version))
}
}
implicit def default(dep: coursier.Dependency): Dep = new Java(dep)
def apply(dep: coursier.Dependency) = Scala(dep)
case class Scala(dep: coursier.Dependency) extends Dep
object Scala{
def apply(org: String, name: String, version: String): Dep = {
Scala(coursier.Dependency(coursier.Module(org, name), version))
}
}
case class Point(dep: coursier.Dependency) extends Dep
object Point{
def apply(org: String, name: String, version: String): Dep = {
Point(coursier.Dependency(coursier.Module(org, name), version))
}
}
implicit def formatter = upickle.default.macroRW[Dep]
}
|