Dotty Documentation


object MegaPhase
extends Object with Serializable

A MegaPhase combines a number of mini-phases which are all executed in a single tree traversal.

This is an evolution of the previous "TreeTransformers.scala", which was written by @DarkDimius and is described in his thesis.

[-] Constructors

[-] Members

[+] abstract class MiniPhase

The base class of tree transforms. For each kind of tree K, there are two methods which can be overridden:

prepareForK: return a new Context which gets passed to the node and its children transformK // transform node of type K

There are also prepare/transform hooks for

  • Stats: to prepare/transform a statement sequence in a block, template, or package def,
  • Unit : to prepare/transform a whole compilation unit
  • Other: to prepape/transform a tree that does not have a specific prepare/transform method pair.