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 typechecker
    Definition Classes
    nsc
  • abstract class RefChecks extends SubComponent with Transform

    Post-attribution checking and transformation.

    Post-attribution checking and transformation.

    This phase performs the following checks.

    • All overrides conform to rules.
    • All type arguments conform to bounds.
    • All type variable uses conform to variance annotations.
    • No forward reference to a term symbol extends beyond a value definition.

    It performs the following transformations.

    • Local modules are replaced by variables and classes
    • Calls to case factory methods are replaced by new's.
    • Eliminate branches in a conditional if the condition is a constant
    Definition Classes
    typechecker
    Version

    1.0

    To do

    Check whether we always check type parameter bounds.

  • class RefCheckTransformer extends Global.Transformer
    Definition Classes
    RefChecks
  • LevelInfo
  • normalizeAll
  • varianceValidator

object varianceValidator extends Global.VarianceValidator

Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. varianceValidator
  2. VarianceValidator
  3. InternalTraverser
  4. Traverser
  5. AnyRef
  6. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def apply[T <: Global.Tree](tree: T): T
    Definition Classes
    Traverser
  5. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  6. def atOwner(owner: Global.Symbol)(traverse: ⇒ Unit): Unit
    Definition Classes
    Traverser
  7. final def checkForEscape(sym: Global.Symbol, site: Global.Symbol): Unit
    Definition Classes
    VarianceValidator
    Annotations
    @tailrec()
  8. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @native() @throws(classOf[java.lang.CloneNotSupportedException])
  9. var currentOwner: Global.Symbol
    Attributes
    protected[scala]
    Definition Classes
    Traverser
  10. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  11. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  12. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  13. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  14. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  15. def isExemptFromVariance(sym: Global.Symbol): Boolean
    Definition Classes
    VarianceValidator
  16. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  17. def issueVarianceError(base: Global.Symbol, sym: Global.Symbol, required: Variance): Unit
    Definition Classes
    varianceValidator → VarianceValidator
  18. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  19. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  20. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  21. def shouldFlip(sym: Global.Symbol, tvar: Global.Symbol): Boolean
    Definition Classes
    VarianceValidator
  22. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  23. def toString(): String
    Definition Classes
    AnyRef → Any
  24. def traverse(tree: Global.Tree): Unit
    Definition Classes
    VarianceValidator → InternalTraverser → Traverser
  25. def traverseAnnotations(annots: List[Global.Tree]): Unit
    Definition Classes
    Traverser
  26. def traverseCases(cases: List[Global.CaseDef]): Unit
    Definition Classes
    Traverser
  27. def traverseConstant(c: Global.Constant): Unit
    Definition Classes
    Traverser
  28. def traverseGuard(guard: Global.Tree): Unit
    Definition Classes
    Traverser
  29. def traverseImportSelector(sel: Global.ImportSelector): Unit
    Definition Classes
    Traverser
  30. def traverseModifiers(mods: Global.Modifiers): Unit
    Definition Classes
    Traverser
  31. def traverseName(name: Global.Name): Unit
    Definition Classes
    Traverser
  32. def traverseParams(params: List[Global.Tree]): Unit
    Definition Classes
    Traverser
  33. def traverseParamss(vparamss: List[List[Global.Tree]]): Unit
    Definition Classes
    Traverser
  34. def traverseParents(parents: List[Global.Tree]): Unit
    Definition Classes
    Traverser
  35. def traversePattern(pat: Global.Tree): Unit
    Definition Classes
    Traverser
  36. def traverseSelfType(self: Global.ValDef): Unit
    Definition Classes
    Traverser
  37. def traverseStats(stats: List[Global.Tree], exprOwner: Global.Symbol): Unit
    Definition Classes
    Traverser
  38. def traverseTrees(trees: List[Global.Tree]): Unit
    Definition Classes
    Traverser
  39. def traverseTreess(treess: List[List[Global.Tree]]): Unit
    Definition Classes
    Traverser
  40. def traverseTypeArgs(args: List[Global.Tree]): Unit
    Definition Classes
    Traverser
  41. def traverseTypeAscription(tpt: Global.Tree): Unit
    Definition Classes
    Traverser
  42. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  43. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  44. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @throws(classOf[java.lang.InterruptedException])

Inherited from Global.Traverser

Inherited from AnyRef

Inherited from Any

Ungrouped