diff options
Diffstat (limited to 'src/reflect/scala/reflect/macros')
-rw-r--r-- | src/reflect/scala/reflect/macros/Universe.scala | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/reflect/scala/reflect/macros/Universe.scala b/src/reflect/scala/reflect/macros/Universe.scala index d368cc6c96..6861a80c47 100644 --- a/src/reflect/scala/reflect/macros/Universe.scala +++ b/src/reflect/scala/reflect/macros/Universe.scala @@ -205,6 +205,18 @@ abstract class Universe extends scala.reflect.api.Universe { def setSymbol(sym: Symbol): T = internal.setSymbol(tree, sym) } + /** Extension methods for typetrees */ + type TypeTreeDecorator[T <: TypeTree] <: MacroTypeTreeDecoratorApi[T] + + /** @see [[TypeTreeDecorator]] */ + implicit def typeTreeDecorator[T <: TypeTree](tt: T): TypeTreeDecorator[T] + + /** @see [[TypeTreeDecorator]] */ + class MacroTypeTreeDecoratorApi[T <: TypeTree](val tt: T) { + /** @see [[internal.setOriginal]] */ + def setOriginal(tree: Tree): TypeTree = internal.setOriginal(tt, tree) + } + /** @inheritdoc */ override type SymbolDecorator[T <: Symbol] <: MacroSymbolDecoratorApi[T] |