dotty.tools.dotc.typer

Inferencing

Related Doc: package typer

object Inferencing

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Inferencing
  2. AnyRef
  3. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Type Members

  1. type VarianceMap = SimpleMap[TypeVar, Integer]

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. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  5. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. def companionRef(tp: Type)(implicit ctx: Context): Type

    Following type aliases and stripping refinements and annotations, if one arrives at a class type reference where the class has a companion module, a reference to that companion module.

    Following type aliases and stripping refinements and annotations, if one arrives at a class type reference where the class has a companion module, a reference to that companion module. Otherwise NoType

  7. final def eq(arg0: AnyRef): Boolean

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

    Definition Classes
    AnyRef → Any
  9. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  10. def fullyDefinedType(tp: Type, what: String, pos: Position)(implicit ctx: Context): Type

    The fully defined type, where all type variables are forced.

    The fully defined type, where all type variables are forced. Throws an error if type contains wildcards.

  11. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  12. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  13. def instantiateSelected(tp: Type, tvars: List[Type])(implicit ctx: Context): Unit

    Instantiate selected type variables tvars in type tp

  14. def interpolateUndetVars(tree: ast.tpd.Tree, ownedBy: Symbol)(implicit ctx: Context): Unit

    Interpolate those undetermined type variables in the widened type of this tree which are introduced by type application contained in the tree.

    Interpolate those undetermined type variables in the widened type of this tree which are introduced by type application contained in the tree. If such a variable appears covariantly in type tp or does not appear at all, approximate it by its lower bound. Otherwise, if it appears contravariantly in type tp approximate it by its upper bound.

    ownedBy

    if it is different from NoSymbol, all type variables owned by ownedBy qualify, independent of position. Without that second condition, it can be that certain variables escape interpolation, for instance when their tree was eta-lifted, so the typechecked tree is no longer the tree in which the variable was declared. A concrete example of this phenomenon can be observed when compiling core.TypeOps#asSeenFrom.

  15. def isFullyDefined(tp: Type, force: Value)(implicit ctx: Context): Boolean

    Is type fully defined, meaning the type does not contain wildcard types or uninstantiated type variables.

    Is type fully defined, meaning the type does not contain wildcard types or uninstantiated type variables. As a side effect, this will minimize any uninstantiated type variables, according to the given force degree, but only if the overall result of isFullyDefined is true. Variables that are successfully minimized do not count as uninstantiated.

  16. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  17. def maximizeType(tp: Type)(implicit ctx: Context): Option[TypeVar]

    Instantiate undetermined type variables to that type tp is maximized and return None.

    Instantiate undetermined type variables to that type tp is maximized and return None. If this is not possible, because a non-variant typevar is not uniquely determined, return that typevar in a Some.

  18. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  19. final def notify(): Unit

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

    Definition Classes
    AnyRef
  21. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  22. def toString(): String

    Definition Classes
    AnyRef → Any
  23. def tvarsInParams(tree: ast.tpd.Tree)(implicit ctx: Context): List[TypeVar]

    The list of uninstantiated type variables bound by some prefix of type T which occur in at least one formal parameter type of a prefix application.

    The list of uninstantiated type variables bound by some prefix of type T which occur in at least one formal parameter type of a prefix application. Considered prefixes are:

    • The function f of an application node f(e1, .., en)
    • The function f of a type application node f[T1, ..., Tn]
    • The prefix p of a selection p.f.
    • The result expression e of a block {s1; .. sn; e}.
  24. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  27. def widenForMatchSelector(tp: Type)(implicit ctx: Context): Type

    Recursively widen and also follow type declarations and type aliases.

Inherited from AnyRef

Inherited from Any

Ungrouped