Recherche…


Créer un arbre de syntaxe avec des quasi-notes

Utilisez des quasi-notes pour créer un Tree dans une macro.

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)
  }
}

Il peut être arbitrairement complexe mais il sera validé pour une syntaxe Scala correcte.



Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow