summaryrefslogtreecommitdiff
path: root/scalalib/src/GenIdeaImpl.scala
diff options
context:
space:
mode:
Diffstat (limited to 'scalalib/src/GenIdeaImpl.scala')
-rwxr-xr-xscalalib/src/GenIdeaImpl.scala28
1 files changed, 15 insertions, 13 deletions
diff --git a/scalalib/src/GenIdeaImpl.scala b/scalalib/src/GenIdeaImpl.scala
index 97decd3f..f27fb1da 100755
--- a/scalalib/src/GenIdeaImpl.scala
+++ b/scalalib/src/GenIdeaImpl.scala
@@ -23,29 +23,31 @@ object GenIdea extends ExternalModule {
implicitly,
ev.rootModule,
ev.rootModule.millDiscover
- )
+ ).run()
}
implicit def millScoptEvaluatorReads[T] = new mill.main.EvaluatorScopt[T]()
lazy val millDiscover = Discover[this.type]
}
-object GenIdeaImpl {
+case class GenIdeaImpl(evaluator: Evaluator,
+ ctx: Log with Home,
+ rootModule: BaseModule,
+ discover: Discover[_]) {
+ val cwd: Path = rootModule.millSourcePath
- def apply(evaluator: Evaluator,
- ctx: Log with Home,
- rootModule: BaseModule,
- discover: Discover[_]): Unit = {
- val pp = new scala.xml.PrettyPrinter(999, 4)
+ def run(): Unit = {
- val jdkInfo = extractCurrentJdk(os.pwd / ".idea" / "misc.xml").getOrElse(("JDK_1_8", "1.8 (1)"))
- os.remove.all(os.pwd/".idea"/"libraries")
- os.remove.all(os.pwd/".idea"/"scala_compiler.xml")
- os.remove.all(os.pwd/".idea_modules")
+ val pp = new scala.xml.PrettyPrinter(999, 4)
+ val jdkInfo = extractCurrentJdk(cwd / ".idea" / "misc.xml").getOrElse(("JDK_1_8", "1.8 (1)"))
+
+ os.remove.all(cwd/".idea"/"libraries")
+ os.remove.all(cwd/".idea"/"scala_compiler.xml")
+ os.remove.all(cwd/".idea_modules")
for((relPath, xml) <- xmlFileLayout(evaluator, rootModule, jdkInfo, Some(ctx))){
- os.write.over(os.pwd/relPath, pp.format(xml), createFolders = true)
+ os.write.over(cwd/relPath, pp.format(xml), createFolders = true)
}
}
@@ -326,7 +328,7 @@ object GenIdeaImpl {
}
def relify(p: os.Path) = {
- val r = p.relativeTo(os.pwd/".idea_modules")
+ val r = p.relativeTo(cwd/".idea_modules")
(Seq.fill(r.ups)("..") ++ r.segments).mkString("/")
}