class Erasure
extends DotClass with Phase with DenotTransformer

Constructors

Erasure ( )

Members

val eraser : Typer
[+] def assertErased ( tree: Tree ) ( implicit ctx: Context ) : Unit

Assert that tree type and its widened underlying type are erased. Also assert that term refs have fixed symbols (so we are sure they need not be reloade...

Assert that tree type and its widened underlying type are erased. Also assert that term refs have fixed symbols (so we are sure they need not be reloaded using member; this would likely fail as signatures may change after erasure).

def assertErased ( tp: Type , tree: Tree ) ( implicit ctx: Context ) : Unit
def assertErased$default$2 : Thicket
override def checkPostCondition ( tree: Tree ) ( implicit ctx: Context ) : Unit

Check what the phase achieves, to be called at any point after it is finished.

Check what the phase achieves, to be called at any point after it is finished.

[+] override def phaseName : String

A name given to the Phase that can be used to debug the compiler. For instance, it is possible to print trees after a given phase using:

A name given to the Phase that can be used to debug the compiler. For instance, it is possible to print trees after a given phase using:

$ ./bin/dotc -Xprint:<phaseNameHere> sourceFile.scala
def run ( implicit ctx: Context ) : Unit
override def runsAfter : Set [ Class [ Nothing <: Phase ] ]

List of names of phases that should precede this phase

List of names of phases that should precede this phase

def transform ( ref: SingleDenotation ) ( implicit ctx: Context ) : SingleDenotation

The transformation method

The transformation method