2

我想使用 scala 宏进行实验。但是当我使用宏时出现错误。

import scala.language.experimental.macros

object Macro {
  import scala.reflect.macros.Context

  def metImpl(c : Context) (s : c.Expr[String]) = {
    import c.universe._

    reify {
     ()
    }
  }
 }


 object A {

   def met(k: String):Unit = macro Macro.metImpl //this error

 }

错误:

test.scala:19: error: macro implementation must be in statically accessible object
def met(k: String):Unit = macro Macro.metImpl

为什么?

4

0 回答 0