Skip to content

Commit 9dd1c6f

Browse files
committed
merge working code plus tests from local work branch
1 parent 1e6a8c3 commit 9dd1c6f

File tree

1 file changed

+9
-4
lines changed

1 file changed

+9
-4
lines changed

compiler/src/dotty/tools/scripting/Main.scala

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,9 @@ object Main:
3535
def main(args: Array[String]): Unit =
3636
val (compilerArgs, scriptFile, scriptArgs, saveCompiled) = distinguishArgs(args)
3737
if verbose then showArgs(args, compilerArgs, scriptFile, scriptArgs)
38-
try ScriptingDriver(compilerArgs, scriptFile, scriptArgs).compileAndRun { (outDir:Path, classpath:String) =>
38+
try
39+
ScriptingDriver(compilerArgs, scriptFile, scriptArgs).compileAndRun {
40+
(outDir:Path, classpath:String) =>
3941
val classFiles = outDir.toFile.listFiles.toList match {
4042
case Nil => sys.error(s"no files below [$outDir]")
4143
case list => list
@@ -61,7 +63,8 @@ object Main:
6163
println(s"Error: ${e.getMessage}")
6264
sys.exit(1)
6365

64-
def writeJarfile(outDir: Path, scriptFile: File, scriptArgs:Array[String], classpath:String, mainClassName: String): Unit =
66+
def writeJarfile(outDir: Path, scriptFile: File, scriptArgs:Array[String],
67+
classpath:String, mainClassName: String): Unit =
6568
import java.net.{URI, URL}
6669
val jarTargetDir: Path = Option(scriptFile.toPath.getParent) match {
6770
case None => sys.error(s"no parent directory for script file [$scriptFile]")
@@ -93,13 +96,15 @@ object Main:
9396

9497
lazy val verbose = Option(System.getenv("DOTC_VERBOSE")) != None
9598

96-
def showArgs(args:Array[String], compilerArgs:Array[String], scriptFile:File, scriptArgs:Array[String]): Unit =
99+
def showArgs(args:Array[String], compilerArgs:Array[String],
100+
scriptFile:File, scriptArgs:Array[String]): Unit =
97101
args.foreach { printf("args[%s]\n", _) }
98102
compilerArgs.foreach { printf("compilerArgs[%s]\n", _) }
99103
scriptArgs.foreach { printf("scriptArgs[%s]\n", _) }
100104
printf("scriptFile[%s]\n", scriptFile)
101105

102-
private def detectMainMethod(outDir: Path, classpath: String, scriptFile: File): (String, Method) =
106+
private def detectMainMethod(outDir: Path, classpath: String,
107+
scriptFile: File): (String, Method) =
103108
val outDirURL = outDir.toUri.toURL
104109
val classpathUrls = classpath.split(pathsep).map(File(_).toURI.toURL)
105110
val cl = URLClassLoader(classpathUrls :+ outDirURL)

0 commit comments

Comments
 (0)