package scala.reflect package macros /** * <span class="badge badge-red" style="float: right;">EXPERIMENTAL</span> * * A slice of [[scala.reflect.macros.Context the Scala macros context]] that * provides functions that generate unique names. */ trait Names { self: Context => /** Creates a unique string. */ def fresh(): String /** Creates a unique string having a given prefix. */ def fresh(name: String): String /** Creates a unique name having a given name as a prefix and * having the same flavor (term name or type name) as the given name. */ def fresh[NameType <: Name](name: NameType): NameType }