Dotty Documentation

0.4.0-bin-SNAPSHOT

abstract class TransformByNameApply
extends MiniPhaseTransform

Abstract base class of ByNameClosures and ElimByName, factoring out the common functionality to transform arguments of by-name parameters.

[-] Constructors

TransformByNameApply ( )

[-] Members

[+] protected def exprBecomesFunction ( symd: SymDenotation ) ( implicit ctx: Context ) : Boolean

If denotation had an ExprType before, it now gets a function type

[+] protected def isByNameRef ( tree: Tree ) ( implicit ctx: Context ) : Boolean
[+] def mkByNameClosure ( arg: Tree , argType: Type ) ( implicit ctx: Context ) : Tree
[+] private def originalDenotation ( tree: Tree ) ( implicit ctx: Context ) : SymDenotation

The info of the tree's symbol before it is potentially transformed in this phase

[+] override def transformApply ( tree: Apply ) ( implicit ctx: Context , info: TransformerInfo ) : Tree