scala.tools.nsc.typechecker

Infer

trait Infer extends Checkable

This trait ...

Self Type
Analyzer
Version

1.0

Linear Supertypes
Known Subclasses
Type Hierarchy Learn more about scaladoc diagrams
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Infer
  2. Checkable
  3. AnyRef
  4. Any
Implicitly
  1. by any2stringadd
  2. by any2stringfmt
  3. by any2ArrowAssoc
  4. by any2Ensuring
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Type Members

  1. trait InferCheckable extends AnyRef

    Definition Classes
    Checkable
  2. class Inferencer extends Analyzer.InferencerContextErrors with Analyzer.InferCheckable

    The context-dependent inferencer part

  3. class NoInstance extends Throwable with ControlThrowable

Value Members

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

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. def +(other: String): String

    Implicit information
    This member is added by an implicit conversion from Infer to StringAdd performed by method any2stringadd in scala.Predef.
    Definition Classes
    StringAdd
  5. def ->[B](y: B): (Infer, B)

    Implicit information
    This member is added by an implicit conversion from Infer to ArrowAssoc[Infer] performed by method any2ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  6. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  7. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  8. def actualArgs(pos: Global.Position, actuals: List[Global.Tree], nformals: Int): List[Global.Tree]

  9. def actualTypes(actuals: List[Global.Type], nformals: Int): List[Global.Type]

  10. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  11. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  12. def ensuring(cond: (Infer) ⇒ Boolean, msg: ⇒ Any): Infer

    Implicit information
    This member is added by an implicit conversion from Infer to Ensuring[Infer] performed by method any2Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  13. def ensuring(cond: (Infer) ⇒ Boolean): Infer

    Implicit information
    This member is added by an implicit conversion from Infer to Ensuring[Infer] performed by method any2Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  14. def ensuring(cond: Boolean, msg: ⇒ Any): Infer

    Implicit information
    This member is added by an implicit conversion from Infer to Ensuring[Infer] performed by method any2Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  15. def ensuring(cond: Boolean): Infer

    Implicit information
    This member is added by an implicit conversion from Infer to Ensuring[Infer] performed by method any2Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  16. final def eq(arg0: AnyRef): Boolean

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

    Definition Classes
    AnyRef → Any
  18. def extractorFormalTypes(pos: Global.Position, resTp: Global.Type, nbSubPats: Int, unappSym: Global.Symbol, effectiveNbSubPats: Int): (List[Global.Type], List[Global.Type])

    Returns (formals, formalsExpanded) where formalsExpanded are the expected types for the nbSubPats sub-patterns of an extractor pattern, of which the corresponding unapply[Seq] call is assumed to have result type resTp.

    Returns (formals, formalsExpanded) where formalsExpanded are the expected types for the nbSubPats sub-patterns of an extractor pattern, of which the corresponding unapply[Seq] call is assumed to have result type resTp.

    formals are the formal types before expanding a potential repeated parameter (must come last in formals, if at all)

    nbSubPats

    The number of arguments to the extractor pattern

    effectiveNbSubPats

    nbSubPats, unless there is one sub-pattern which, after unwrapping bind patterns, is a Tuple pattern, in which case it is the number of elements. Used to issue warnings about binding a TupleN to a single value.

    Exceptions thrown
    TypeError

    when the unapply[Seq] definition is ill-typed

  19. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  20. def formalTypes(formals: List[Global.Type], nargs: Int, removeByName: Boolean = true, removeRepeated: Boolean = true): List[Global.Type]

    The formal parameter types corresponding to formals.

    The formal parameter types corresponding to formals. If formals has a repeated last parameter, a list of (nargs - params.length + 1) copies of its type is returned. By-name types are replaced with their underlying type.

    removeByName

    allows keeping ByName parameters. Used in NamesDefaults.

    removeRepeated

    allows keeping repeated parameter (if there's one argument). Used in NamesDefaults.

  21. def formatted(fmtstr: String): String

    Implicit information
    This member is added by an implicit conversion from Infer to StringFormat performed by method any2stringfmt in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  22. def freshVar(tparam: Global.Symbol): Global.TypeVar

    A fresh type variable with given type parameter as origin.

    A fresh type variable with given type parameter as origin.

    tparam

    ...

    returns

    ...

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

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

    Definition Classes
    AnyRef → Any
  25. object instantiate extends Global.TypeMap

    Map every TypeVar to its constraint.

  26. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  27. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  28. def normalize(tp: Global.Type): Global.Type

    Automatically perform the following conversions on expression types: A method type becomes the corresponding function type.

    Automatically perform the following conversions on expression types: A method type becomes the corresponding function type. A nullary method type becomes its result type. Implicit parameters are skipped. This method seems to be performance critical.

  29. final def notify(): Unit

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

    Definition Classes
    AnyRef
  31. def propagateKnownTypes(from: Global.Type, to: Global.Symbol): Global.Type

    The applied type of class 'to' after inferring anything possible from the knowledge that 'to' must also be of the type given in 'from'.

    The applied type of class 'to' after inferring anything possible from the knowledge that 'to' must also be of the type given in 'from'.

    Definition Classes
    Checkable
  32. def skipImplicit(tp: Global.Type): Global.Type

  33. def solvedTypes(tvars: List[Global.TypeVar], tparams: List[Global.Symbol], variances: List[Int], upper: Boolean, depth: Int): List[Global.Type]

    Solve constraint collected in types tvars.

    Solve constraint collected in types tvars.

    tvars

    All type variables to be instantiated.

    tparams

    The type parameters corresponding to tvars

    variances

    The variances of type parameters; need to reverse solution direction for all contravariant variables.

    upper

    When true search for max solution else min.

    Exceptions thrown
    NoInstance

  34. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  35. def toString(): String

    Definition Classes
    AnyRef → Any
  36. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  39. def [B](y: B): (Infer, B)

    Implicit information
    This member is added by an implicit conversion from Infer to ArrowAssoc[Infer] performed by method any2ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc

Shadowed Implicit Value Members

  1. val self: Any

    Implicit information
    This member is added by an implicit conversion from Infer to StringAdd performed by method any2stringadd in scala.Predef.
    Shadowing
    This implicitly inherited member is ambiguous. One or more implicitly inherited members have similar signatures, so calling this member may produce an ambiguous implicit conversion compiler error.
    To access this member you can use a type ascription:
    (infer: StringAdd).self
    Definition Classes
    StringAdd
  2. val self: Any

    Implicit information
    This member is added by an implicit conversion from Infer to StringFormat performed by method any2stringfmt in scala.Predef.
    Shadowing
    This implicitly inherited member is ambiguous. One or more implicitly inherited members have similar signatures, so calling this member may produce an ambiguous implicit conversion compiler error.
    To access this member you can use a type ascription:
    (infer: StringFormat).self
    Definition Classes
    StringFormat

Deprecated Value Members

  1. def x: Infer

    Implicit information
    This member is added by an implicit conversion from Infer to ArrowAssoc[Infer] performed by method any2ArrowAssoc in scala.Predef.
    Shadowing
    This implicitly inherited member is ambiguous. One or more implicitly inherited members have similar signatures, so calling this member may produce an ambiguous implicit conversion compiler error.
    To access this member you can use a type ascription:
    (infer: ArrowAssoc[Infer]).x
    Definition Classes
    ArrowAssoc
    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use leftOfArrow instead

  2. def x: Infer

    Implicit information
    This member is added by an implicit conversion from Infer to Ensuring[Infer] performed by method any2Ensuring in scala.Predef.
    Shadowing
    This implicitly inherited member is ambiguous. One or more implicitly inherited members have similar signatures, so calling this member may produce an ambiguous implicit conversion compiler error.
    To access this member you can use a type ascription:
    (infer: Ensuring[Infer]).x
    Definition Classes
    Ensuring
    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use resultOfEnsuring instead

Inherited from Checkable

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion any2stringadd from Infer to StringAdd

Inherited by implicit conversion any2stringfmt from Infer to StringFormat

Inherited by implicit conversion any2ArrowAssoc from Infer to ArrowAssoc[Infer]

Inherited by implicit conversion any2Ensuring from Infer to Ensuring[Infer]

Ungrouped