summaryrefslogtreecommitdiff
path: root/scalaplugin/src/main
diff options
context:
space:
mode:
authorLi Haoyi <haoyi.sg@gmail.com>2017-11-11 21:19:46 -0800
committerLi Haoyi <haoyi.sg@gmail.com>2017-11-11 21:19:46 -0800
commit24fe3185b455da233c6a4801176de57953265e5f (patch)
tree6daf36eda9b9a2a0a87b2fe38d327191e64b6ddf /scalaplugin/src/main
parent9dd14b1b976d1a95486339f92607496b8efca3b1 (diff)
downloadmill-24fe3185b455da233c6a4801176de57953265e5f.tar.gz
mill-24fe3185b455da233c6a4801176de57953265e5f.tar.bz2
mill-24fe3185b455da233c6a4801176de57953265e5f.zip
cleanup `build.sc` imports
Diffstat (limited to 'scalaplugin/src/main')
-rw-r--r--scalaplugin/src/main/scala/mill/scalaplugin/Dep.scala50
-rw-r--r--scalaplugin/src/main/scala/mill/scalaplugin/Subproject.scala46
-rw-r--r--scalaplugin/src/main/scala/mill/scalaplugin/package.scala5
3 files changed, 55 insertions, 46 deletions
diff --git a/scalaplugin/src/main/scala/mill/scalaplugin/Dep.scala b/scalaplugin/src/main/scala/mill/scalaplugin/Dep.scala
new file mode 100644
index 00000000..57c881c8
--- /dev/null
+++ b/scalaplugin/src/main/scala/mill/scalaplugin/Dep.scala
@@ -0,0 +1,50 @@
+package mill.scalaplugin
+
+import play.api.libs.json._
+import mill.util.JsonFormatters._
+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: Format[Dep] = new Format[Dep]{
+ def writes(o: Dep) = o match{
+ case Java(dep) => Json.obj("Java" -> Json.toJson(dep))
+ case Scala(dep) => Json.obj("Scala" -> Json.toJson(dep))
+ case Point(dep) => Json.obj("PointScala" -> Json.toJson(dep))
+ }
+
+ def reads(json: JsValue) = json match{
+ case obj: JsObject =>
+ obj.fields match{
+ case Seq(("Java", dep)) => Json.fromJson[coursier.Dependency](dep).map(Java(_))
+ case Seq(("Scala", dep)) => Json.fromJson[coursier.Dependency](dep).map(Scala(_))
+ case Seq(("PointScala", dep)) => Json.fromJson[coursier.Dependency](dep).map(Point(_))
+ case _ => JsError("Invalid JSON object to parse ScalaDep")
+ }
+
+
+ case _ => JsError("Expected JSON object to parse ScalaDep")
+ }
+ }
+} \ No newline at end of file
diff --git a/scalaplugin/src/main/scala/mill/scalaplugin/Subproject.scala b/scalaplugin/src/main/scala/mill/scalaplugin/Subproject.scala
index 2fd9b2e0..4f576623 100644
--- a/scalaplugin/src/main/scala/mill/scalaplugin/Subproject.scala
+++ b/scalaplugin/src/main/scala/mill/scalaplugin/Subproject.scala
@@ -140,52 +140,6 @@ object Subproject{
def scalaRuntimeIvyDeps(scalaVersion: String) = Seq[Dep](
Dep.Java("org.scala-lang", "scala-library", scalaVersion)
)
- 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: Format[Dep] = new Format[Dep]{
- def writes(o: Dep) = o match{
- case Java(dep) => Json.obj("Java" -> Json.toJson(dep))
- case Scala(dep) => Json.obj("Scala" -> Json.toJson(dep))
- case Point(dep) => Json.obj("PointScala" -> Json.toJson(dep))
- }
-
- def reads(json: JsValue) = json match{
- case obj: JsObject =>
- obj.fields match{
- case Seq(("Java", dep)) => Json.fromJson[coursier.Dependency](dep).map(Java(_))
- case Seq(("Scala", dep)) => Json.fromJson[coursier.Dependency](dep).map(Scala(_))
- case Seq(("PointScala", dep)) => Json.fromJson[coursier.Dependency](dep).map(Point(_))
- case _ => JsError("Invalid JSON object to parse ScalaDep")
- }
-
-
- case _ => JsError("Expected JSON object to parse ScalaDep")
- }
- }
- }
}
import Subproject._
diff --git a/scalaplugin/src/main/scala/mill/scalaplugin/package.scala b/scalaplugin/src/main/scala/mill/scalaplugin/package.scala
new file mode 100644
index 00000000..1f1c5378
--- /dev/null
+++ b/scalaplugin/src/main/scala/mill/scalaplugin/package.scala
@@ -0,0 +1,5 @@
+package mill
+
+package object scalaplugin {
+
+}