@@ -187,11 +187,11 @@ object Splicer {
187
187
} else if (fn.symbol.is(Module )) {
188
188
interpretModuleAccess(fn.symbol)
189
189
} else if (fn.symbol.isStatic) {
190
- val module = fn.symbol.owner
191
- interpretStaticMethodCall(module, fn.symbol, args.flatten.map(interpretTree))
190
+ val staticMethodCall = interpretedStaticMethodCall( fn.symbol.owner, fn.symbol)
191
+ staticMethodCall( args.flatten.map(interpretTree))
192
192
} else if (fn.qualifier.symbol.is(Module ) && fn.qualifier.symbol.isStatic) {
193
- val module = fn.qualifier.symbol.moduleClass
194
- interpretStaticMethodCall(module, fn.symbol, args.flatten.map(interpretTree))
193
+ val staticMethodCall = interpretedStaticMethodCall( fn.qualifier.symbol.moduleClass, fn.symbol)
194
+ staticMethodCall( args.flatten.map(interpretTree))
195
195
} else if (env.contains(fn.name)) {
196
196
env(fn.name)
197
197
} else if (tree.symbol.is(InlineProxy )) {
@@ -245,7 +245,7 @@ object Splicer {
245
245
private def interpretQuoteContext ()(implicit env : Env ): Object =
246
246
new scala.quoted.QuoteContext (ReflectionImpl (ctx, pos))
247
247
248
- private def interpretStaticMethodCall (moduleClass : Symbol , fn : Symbol , args : => List [ Object ] )(implicit env : Env ): Object = {
248
+ private def interpretedStaticMethodCall (moduleClass : Symbol , fn : Symbol )(implicit env : Env ): List [ Object ] => Object = {
249
249
val (inst, clazz) =
250
250
if (moduleClass.name.startsWith(str.REPL_SESSION_LINE )) {
251
251
(null , loadReplLineClass(moduleClass))
@@ -262,7 +262,8 @@ object Splicer {
262
262
263
263
val name = getDirectName(fn.info.finalResultType, fn.name.asTermName)
264
264
val method = getMethod(clazz, name, paramsSig(fn))
265
- stopIfRuntimeException(method.invoke(inst, args : _* ))
265
+
266
+ (args : List [Object ]) => stopIfRuntimeException(method.invoke(inst, args : _* ))
266
267
}
267
268
268
269
private def interpretModuleAccess (fn : Symbol )(implicit env : Env ): Object =
0 commit comments