Packages

  • package root

    The Scala compiler and reflection APIs.

    The Scala compiler and reflection APIs.

    Definition Classes
    root
  • package scala
    Definition Classes
    root
  • package tools
    Definition Classes
    scala
  • package nsc
    Definition Classes
    tools
  • package transform
    Definition Classes
    nsc
  • trait InfoTransform extends SubComponent with Transform

    An InfoTransform contains a compiler phase that transforms trees and symbol infos -- making sure they stay consistent.

    An InfoTransform contains a compiler phase that transforms trees and symbol infos -- making sure they stay consistent. The symbol info is transformed assuming it is consistent right before this phase. The info transformation is triggered by Symbol::rawInfo, which caches the results in the symbol's type history. This way sym.info (during an enteringPhase(p)) can look up what the symbol's info should look like at the beginning of phase p. (If the transformed info had not been stored yet, rawInfo will compute the info by composing the info-transformers of the most recent phase before p, up to the transformer of the phase right before p.)

    Concretely, enteringPhase(p) { sym.info } yields the info *before* phase p has transformed it. Imagine you're a phase and it all makes sense.

    Definition Classes
    transform
  • Phase
  • StdPhase

class Phase extends InfoTransform.Phase

Source
InfoTransform.scala
Linear Supertypes
InfoTransform.Phase, InfoTransform.StdPhase, GlobalPhase, reflect.internal.Phase, AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Phase
  2. Phase
  3. StdPhase
  4. GlobalPhase
  5. Phase
  6. AnyRef
  7. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new Phase(prev: nsc.Phase)

Type Members

  1. type Id = Int
    Definition Classes
    Phase

Value Members

  1. def apply(unit: Global.CompilationUnit): Unit
    Definition Classes
    PhaseGlobalPhase
  2. final def applyPhase(unit: Global.CompilationUnit): Unit
    Definition Classes
    GlobalPhase
  3. final val assignsFields: Boolean
    Definition Classes
    Phase
  4. def cancelled(unit: Global.CompilationUnit): Boolean

    Is current phase cancelled on this unit?

    Is current phase cancelled on this unit?

    Definition Classes
    GlobalPhase
  5. def checkable: Boolean
    Definition Classes
    Phase
  6. def description: String
    Definition Classes
    Phase
  7. def equals(other: Any): Boolean
    Definition Classes
    Phase → AnyRef → Any
  8. def erasedTypes: Boolean
    Definition Classes
    Phase
  9. def flagMask: Long
    Definition Classes
    Phase
  10. final val flatClasses: Boolean
    Definition Classes
    Phase
  11. val fmask: Long
    Definition Classes
    Phase
  12. def hasNext: Boolean
    Definition Classes
    Phase
  13. def hashCode(): Int
    Definition Classes
    Phase → AnyRef → Any
  14. val id: Id
    Definition Classes
    Phase
  15. def iterator: collection.Iterator[reflect.internal.Phase]
    Definition Classes
    Phase
  16. val keepsTypeParams: Boolean
    Definition Classes
    Phase → Phase
  17. def name: String
    Definition Classes
    StdPhase → Phase
  18. def newFlags: Long
    Definition Classes
    StdPhase → Phase
  19. def next: reflect.internal.Phase
    Definition Classes
    Phase
  20. def nextFlags: Long
    Definition Classes
    StdPhase → Phase
  21. val prev: reflect.internal.Phase
    Definition Classes
    Phase
  22. final val refChecked: Boolean
    Definition Classes
    Phase
  23. def run(): Unit
    Definition Classes
    GlobalPhase → Phase
  24. final val specialized: Boolean
    Definition Classes
    Phase
  25. def toString(): String
    Definition Classes
    Phase → AnyRef → Any
  26. final def withCurrentUnit(unit: Global.CompilationUnit)(task: ⇒ Unit): Unit
    Definition Classes
    GlobalPhase
  27. final def withCurrentUnitNoLog(unit: Global.CompilationUnit)(task: ⇒ Unit): Unit
    Definition Classes
    GlobalPhase