package cbt
trait Tut extends BaseBuild {
def tut = Tut.apply( lib, context.cbtLastModified, context.paths.mavenCache, scalaMajorVersion ).config(
projectDirectory / "tut", target / "tut", classpath, scalacOptions
)
}
import java.io.File
object Tut {
case class apply(
lib: Lib, cbtLastModified: Long, mavenCache: File, scalaMajorVersion: String
)(
implicit
logger: Logger, transientCache: java.util.Map[AnyRef, AnyRef], classLoaderCache: ClassLoaderCache
) {
case class config(
sourceDirectory: File,
targetDirectory: File,
classpath: ClassPath,
scalacOptions: Seq[String],
fileExtensionRegex: String = """.*\.(md|txt|htm|html)""",
version: String = "0.4.8"
) {
def apply =
lib.redirectOutToErr {
tut( version ).runMain(
"tut.TutMain",
Seq(
sourceDirectory.string, targetDirectory.string, fileExtensionRegex, "-cp", classpath.string
) ++ scalacOptions
)
}
}
def tut( version: String ) = MavenResolver( cbtLastModified, mavenCache, bintray( "tpolecat" ), mavenCentral ).bindOne(
MavenDependency( "org.tpolecat", "tut-core_" ~ scalaMajorVersion, version )
)
}
}