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