class BCodePhase extends StdPhase

Source
GenBCode.scala
Linear Supertypes
GenBCode.StdPhase, GlobalPhase, reflect.internal.Phase, AnyRef, Any
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. BCodePhase
  2. StdPhase
  3. GlobalPhase
  4. Phase
  5. AnyRef
  6. 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 BCodePhase(prev: Phase)

Type Members

  1. type Id = Int
    Definition Classes
    Phase
  2. case class Item1 (arrivalPos: Int, cd: Global.ClassDef, cunit: Global.CompilationUnit) extends Product with Serializable
  3. case class Item2 (arrivalPos: Int, mirror: ClassNode, plain: ClassNode, bean: ClassNode, sourceFilePath: String, outFolder: AbstractFile) extends Product with Serializable
  4. case class Item3 (arrivalPos: Int, mirror: SubItem3, plain: SubItem3, bean: SubItem3, outFolder: AbstractFile) extends Product with Serializable
  5. case class SubItem3 (jclassName: String, jclassBytes: Array[Byte]) extends Product with Serializable
  6. class Worker1 extends AnyRef
  7. class Worker2 extends AnyRef

Value Members

  1. def apply(cunit: Global.CompilationUnit): Unit
    Definition Classes
    BCodePhaseGlobalPhase
  2. final def applyPhase(unit: Global.CompilationUnit): Unit
    Definition Classes
    GlobalPhase
  3. var arrivalPos: Int
  4. final val assignsFields: Boolean
    Definition Classes
    Phase
  5. def cancelled(unit: Global.CompilationUnit): Boolean

    Is current phase cancelled on this unit?

    Is current phase cancelled on this unit?

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

    The run method is overridden because the backend has a different data flow than the default phase: the backend does not transform compilation units one by one, but on all units in the same run.

    The run method is overridden because the backend has a different data flow than the default phase: the backend does not transform compilation units one by one, but on all units in the same run. This allows cross-unit optimizations and running some stages of the backend concurrently on multiple units.

    A run of the BCodePhase phase comprises:

    (a) set-up steps (most notably supporting maps in BCodeTypes, but also "the" writer where class files in byte-array form go)

    (b) building of ASM ClassNodes, their optimization and serialization.

    (c) tear down (closing the classfile-writer and clearing maps)

    Definition Classes
    BCodePhaseGlobalPhase → Phase
  25. final val specialized: Boolean
    Definition Classes
    Phase
  26. def toString(): String
    Definition Classes
    Phase → AnyRef → Any
  27. final def withCurrentUnit(unit: Global.CompilationUnit)(task: ⇒ Unit): Unit
    Definition Classes
    GlobalPhase
  28. final def withCurrentUnitNoLog(unit: Global.CompilationUnit)(task: ⇒ Unit): Unit
    Definition Classes
    GlobalPhase