dotty.tools.dotc.typer

RefChecks

Related Docs: object RefChecks | package typer

class RefChecks extends DotClass with MiniPhase

Post-attribution checking and transformation, which fulfills the following roles

  1. This phase performs the following checks.

2. It warns about references to symbols labeled deprecated or migration.

3. It performs the following transformations:

4. It makes members not private where necessary. The following members cannot be private in the Java model:

todo: But RefChecks is not done yet. It's still a somewhat dirty port from the Scala 2 version. todo: move untrivial logic to their own mini-phases

Self Type
RefChecks
Linear Supertypes
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. RefChecks
  2. MiniPhase
  3. Phase
  4. DotClass
  5. AnyRef
  6. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new RefChecks()

Type Members

  1. class Transform extends TreeTransform

Value Members

  1. final def !=(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Definition Classes
    AnyRef → Any
  3. final def <=(that: Phase): Boolean

    Definition Classes
    Phase
  4. final def ==(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  5. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  6. def checkPostCondition(tree: ast.tpd.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.

    Definition Classes
    Phase
  7. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  8. def description: String

    Definition Classes
    Phase
  9. def end: PhaseId

    Definition Classes
    Phase
  10. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  11. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  12. final def erasedTypes: Boolean

    Definition Classes
    Phase
  13. def exists: Boolean

    Definition Classes
    Phase
  14. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  15. final def flatClasses: Boolean

    Definition Classes
    Phase
  16. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  17. final def hasNext: Boolean

    Definition Classes
    Phase
  18. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  19. def id: Int

    The sequence position of this phase in the given context where 0 is reserved for NoPhase and the first real phase is at position 1.

    The sequence position of this phase in the given context where 0 is reserved for NoPhase and the first real phase is at position 1. -1 if the phase is not installed in the context.

    Definition Classes
    Phase
  20. var idx: Int

    id of this mini phase in group

    id of this mini phase in group

    Definition Classes
    MiniPhase
  21. def init(base: ContextBase, id: Int): Unit

    Attributes
    protected[dotty.tools.dotc.core.Phases]
    Definition Classes
    Phase
  22. def init(base: ContextBase, start: Int, end: Int): Unit

    Attributes
    protected[dotty.tools.dotc.core.Phases]
    Definition Classes
    Phase
  23. def isCheckable: Boolean

    Output should be checkable by TreeChecker

    Output should be checkable by TreeChecker

    Definition Classes
    Phase
  24. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  25. def isTyper: Boolean

    Is this phase the standard typerphase? True for FrontEnd, but not for other first phases (such as FromTasty).

    Is this phase the standard typerphase? True for FrontEnd, but not for other first phases (such as FromTasty). The predicate is tested in some places that perform checks and corrections. It's different from isAfterTyper (and cheaper to test).

    Definition Classes
    Phase
  26. final def iterator: Iterator[Phase]

    Definition Classes
    Phase
  27. final def labelsReordered: Boolean

    Definition Classes
    Phase
  28. def mkTreeTransformer: TreeTransformer

    Attributes
    protected
    Definition Classes
    MiniPhase
  29. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  30. final def next: Phase

    Definition Classes
    Phase
  31. final def notify(): Unit

    Definition Classes
    AnyRef
  32. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  33. def period: Period

    Definition Classes
    Phase
  34. def phaseName: String

    Definition Classes
    RefChecksPhase
  35. final def prev: Phase

    Definition Classes
    Phase
  36. final def refChecked: Boolean

    Definition Classes
    Phase
  37. def relaxedTyping: Boolean

    If set, allow missing or superfluous arguments in applications and type applications.

    If set, allow missing or superfluous arguments in applications and type applications.

    Definition Classes
    Phase
  38. def run(implicit ctx: Context): Unit

    Definition Classes
    MiniPhasePhase
  39. def runOn(units: List[CompilationUnit])(implicit ctx: Context): List[CompilationUnit]

    Definition Classes
    Phase
  40. def runsAfter: Set[Class[_ <: Phase]]

    List of names of phases that should precede this phase

    List of names of phases that should precede this phase

    Definition Classes
    Phase
  41. def runsAfterGroupsOf: Set[Class[_ <: Phase]]

    List of names of phases that should have finished their processing of all compilation units before this phase starts

    List of names of phases that should have finished their processing of all compilation units before this phase starts

    Definition Classes
    MiniPhase
  42. def start: Int

    Definition Classes
    Phase
  43. final def symbolicRefs: Boolean

    Definition Classes
    Phase
  44. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  45. def toString(): String

    Definition Classes
    Phase → AnyRef → Any
  46. val treeTransform: Transform

    Definition Classes
    RefChecksMiniPhase
  47. def unsupported(methodName: String): Nothing

    Throws an UnsupportedOperationException with the given method name.

    Throws an UnsupportedOperationException with the given method name.

    Definition Classes
    DotClass
  48. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  49. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  50. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from MiniPhase

Inherited from Phase

Inherited from DotClass

Inherited from AnyRef

Inherited from Any

Ungrouped