diff options
author | Ilya Kirillov <darthorimar@users.noreply.github.com> | 2017-03-18 15:42:33 +0300 |
---|---|---|
committer | Ilya Kirillov <darthorimar@users.noreply.github.com> | 2017-03-19 02:56:28 +0300 |
commit | 923fd231e0b2c22c0c60379da91066c0f544e83c (patch) | |
tree | 1f80e94e0f605453c769bb4e62ecb3b5d8cc836c /plugins/scalafix | |
parent | b9c20082bcbd231eb67c3ded0d3fe6674c8c55b7 (diff) | |
download | cbt-923fd231e0b2c22c0c60379da91066c0f544e83c.tar.gz cbt-923fd231e0b2c22c0c60379da91066c0f544e83c.tar.bz2 cbt-923fd231e0b2c22c0c60379da91066c0f544e83c.zip |
Add scalafix plugin with example project and tests
Diffstat (limited to 'plugins/scalafix')
-rw-r--r-- | plugins/scalafix/Scalafix.scala | 28 | ||||
-rw-r--r-- | plugins/scalafix/build/build.scala | 12 |
2 files changed, 40 insertions, 0 deletions
diff --git a/plugins/scalafix/Scalafix.scala b/plugins/scalafix/Scalafix.scala new file mode 100644 index 0000000..cf808d7 --- /dev/null +++ b/plugins/scalafix/Scalafix.scala @@ -0,0 +1,28 @@ +package cbt + +import cbt._ +import java.nio.file.Files._ +import java.nio.file._ +import java.io.File + +trait Scalafix extends BaseBuild { + def scalafixVersion = "0.3.1" + + override def scalacOptions = super.scalacOptions ++ + Scalafix.scalacOptions(projectDirectory.toPath, + Resolver( mavenCentral, sonatypeReleases ).bindOne( + ScalaDependency( "ch.epfl.scala", "scalafix-nsc", scalafixVersion ) + ).jar) +} + +object Scalafix { + def scalacOptions( rootPath: Path, nscJar: File ) = + Seq( + "-Xplugin:" ++ nscJar.string, + "-Yrangepos" + ) ++ configOption(rootPath) + + def configOption( rootPath: Path ) = + Some( rootPath.resolve(".scalafix.conf").toAbsolutePath ) + .filter(isRegularFile(_)).map("-P:scalafix:" ++ _.toString).toSeq +} diff --git a/plugins/scalafix/build/build.scala b/plugins/scalafix/build/build.scala new file mode 100644 index 0000000..b25b54d --- /dev/null +++ b/plugins/scalafix/build/build.scala @@ -0,0 +1,12 @@ +package scalafix_build + +import cbt._ + +class Build(val context: Context) extends Plugin { + override def dependencies = ( + super.dependencies ++ + Resolver( mavenCentral, sonatypeReleases ).bind( + ScalaDependency( "ch.epfl.scala", "scalafix-nsc", "0.3.1" ) + ) + ) +} |