Scala Compiler 2.13.16 - scala.tools.nsc.typechecker.RefChecks.RefCheckTransformer.varianceValidator
Keywords: Scala Compiler 2.13.16 scala.tools.nsc.typechecker.RefChecks.RefCheckTransformer.varianceValidator

Scala Compiler2.13.16 < Back


# 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 checks the following postconditions:

  - All overrides conform to rules.
  - All type arguments conform to bounds.
  - Every use of a type variable conforms to the variance annotation of that variable.
  - 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
-  class RefCheckTransformer extends Global.AstTransformer
  Definition Classes
    RefChecks
- LevelInfo
- normalizeAll
- varianceValidator

o

scala.tools.nsc.typechecker.RefChecks.RefCheckTransformer

# varianceValidator

###

#### object varianceValidator extends Global.VarianceValidator

Source
  RefChecks.scala

Linear Supertypes
Global.VarianceValidator, Global.InternalTraverser, Global.Traverser, AnyRef, Any

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. Protected

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

### Inherited from Global.VarianceValidator

### Inherited from Global.InternalTraverser

### Inherited from Global.Traverser

### Inherited from AnyRef

### Inherited from Any

### Ungrouped