Skip to content

Commit 8443112

Browse files
nicolasstuckibiboudis
authored andcommitted
Move TastyInterpreter
1 parent ace99d9 commit 8443112

File tree

2 files changed

+26
-22
lines changed

2 files changed

+26
-22
lines changed

tests/run-with-compiler-custom-args/tasty-interpreter/Test.scala

Lines changed: 1 addition & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import dotty.tools.dotc.util.DiffUtil
44

55
import scala.io.Source
66
import scala.tasty.file._
7-
import scala.tasty.interpreter.jvm.Interpreter
7+
import scala.tasty.interpreter.TastyInterpreter
88
import scala.tasty.Reflection
99

1010
object Test {
@@ -63,24 +63,3 @@ object Test {
6363
)
6464
}
6565
}
66-
67-
class TastyInterpreter extends TastyConsumer {
68-
69-
final def apply(reflect: Reflection)(root: reflect.Tree): Unit = {
70-
import reflect._
71-
object Traverser extends TreeTraverser {
72-
73-
override def traverseTree(tree: Tree)(implicit ctx: Context): Unit = tree match {
74-
// TODO: check the correct sig and object enclosement for main
75-
case DefDef("main", _, _, _, Some(rhs)) =>
76-
val interpreter = new Interpreter(reflect)
77-
78-
interpreter.eval(rhs)(Map.empty)
79-
// TODO: recurse only for PackageDef, ClassDef
80-
case tree =>
81-
super.traverseTree(tree)
82-
}
83-
}
84-
Traverser.traverseTree(root)(reflect.rootContext)
85-
}
86-
}
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
package scala.tasty.interpreter
2+
3+
import scala.tasty.Reflection
4+
import scala.tasty.file.TastyConsumer
5+
6+
class TastyInterpreter extends TastyConsumer {
7+
8+
final def apply(reflect: Reflection)(root: reflect.Tree): Unit = {
9+
import reflect._
10+
object Traverser extends TreeTraverser {
11+
12+
override def traverseTree(tree: Tree)(implicit ctx: Context): Unit = tree match {
13+
// TODO: check the correct sig and object enclosement for main
14+
case DefDef("main", _, _, _, Some(rhs)) =>
15+
val interpreter = new jvm.Interpreter(reflect)
16+
17+
interpreter.eval(rhs)(Map.empty)
18+
// TODO: recurse only for PackageDef, ClassDef
19+
case tree =>
20+
super.traverseTree(tree)
21+
}
22+
}
23+
Traverser.traverseTree(root)(reflect.rootContext)
24+
}
25+
}

0 commit comments

Comments
 (0)