Поиск…


Создание дерева синтаксиса с квазикварталами

Используйте квазивоты для создания Tree в макросе.

object macro {
  def addCreationDate(): java.util.Date = macro impl.addCreationDate
}

object impl {
  def addCreationDate(c: Context)(): c.Expr[java.util.Date] = {
    import c.universe._

    val date = q"new java.util.Date()" // this is the quasiquote
    c.Expr[java.util.Date](date)
  }
}

Он может быть произвольно сложным, но он будет проверен для правильного синтаксиса scala.



Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow