Packages

c

scala.tools.nsc

SubComponent

abstract class SubComponent extends AnyRef

Compilation is split into phases and the sub-components of the compiler define such phases.

Source
SubComponent.scala
Linear Supertypes
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. SubComponent
  2. AnyRef
  3. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new SubComponent()

Type Members

  1. abstract class StdPhase extends GlobalPhase

    A standard phase template

Abstract Value Members

  1. abstract val global: Global

    The global environment; overridden by instantiation in Global.

  2. abstract def newPhase(prev: Phase): Phase

    The phase factory

  3. abstract val phaseName: String

    The name of the phase

  4. abstract val runsAfter: List[String]

    Names of phases that must run before this phase.

  5. abstract val runsRightAfter: Option[String]

    Name of the phase that this phase must follow immediately.

Concrete Value Members

  1. final def afterOwnPhase[T](op: => T): T
    Annotations
    @inline()
  2. final def beforeOwnPhase[T](op: => T): T
    Annotations
    @inline()
  3. def enabled: Boolean

    Is this component enabled? Default is true.

  4. def equals(other: Any): Boolean
    Definition Classes
    SubComponent → AnyRef → Any
  5. def hashCode(): Int

    SubComponents are added to a HashSet and two phases are the same if they have the same name.

    SubComponents are added to a HashSet and two phases are the same if they have the same name.

    Definition Classes
    SubComponent → AnyRef → Any
  6. val initial: Boolean

    True if this phase runs before all other phases.

    True if this phase runs before all other phases. Usually, parser.

  7. val internal: Boolean

    True if this phase is not provided by a plug-in.

  8. def ownPhase: Phase

    The phase corresponding to this subcomponent in the current compiler run.

  9. def phaseNewFlags: Long

    New flags defined by the phase which are not valid before

  10. def phaseNextFlags: Long

    New flags defined by the phase which are not valid until immediately after it

  11. val requires: List[String]

    Names of phases required by this component.

    Names of phases required by this component. Default is Nil.

  12. val runsBefore: List[String]

    Names of phases that must run after this phase.

    Names of phases that must run after this phase. Default is Nil.

  13. val terminal: Boolean

    True if this phase runs after all other phases.

    True if this phase runs after all other phases. Usually, terminal.