scala.tools.nsc.typechecker

Typers

trait Typers extends Modes with Adaptations with PatMatVirtualiser

This trait provides methods to assign types to trees.

Self Type
Analyzer
Source
Typers.scala
Version

1.0

Linear Supertypes
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Hide All
  2. Show all
  1. Typers
  2. PatMatVirtualiser
  3. TreeDSL
  4. Adaptations
  5. Modes
  6. AnyRef
  7. Any
Visibility
  1. Public
  2. All

Type Members

  1. trait Adaptation extends AnyRef

  2. trait CodegenCore extends MatchMonadInterface

  3. trait CommonSubconditionElimination extends TreeMakerApproximation

  4. trait DeadCodeElimination extends TreeMakers

  5. trait MatchMonadInterface extends AnyRef

    Interface with user-defined match monad? if there's a match in scope, we use this as the match strategy, assuming it conforms to MatchStrategy as defined below:

  6. trait MatchOptimizations extends CommonSubconditionElimination with DeadCodeElimination with SwitchEmission with OptimizedCodegen

  7. trait MatchTranslation extends MatchMonadInterface

  8. trait OptimizedCodegen extends CodegenCore with TypedSubstitution with OptimizedMatchMonadInterface

  9. trait OptimizedMatchMonadInterface extends MatchMonadInterface

  10. class OptimizingMatchTranslator extends MatchTranslation with TreeMakers with MatchOptimizations

  11. trait PureCodegen extends CodegenCore with PureMatchMonadInterface

  12. trait PureMatchMonadInterface extends MatchMonadInterface

  13. class PureMatchTranslator extends MatchTranslation with TreeMakers with PureCodegen

  14. sealed abstract class SilentResult[+T] extends AnyRef

  15. case class SilentResultValue[+T](value: T) extends SilentResult[T] with Product with Serializable

  16. case class SilentTypeError(err: AbsTypeError) extends SilentResult[Nothing] with Product with Serializable

  17. trait SwitchEmission extends TreeMakers with OptimizedMatchMonadInterface

  18. trait TreeMakerApproximation extends TreeMakers

  19. trait TreeMakers extends TypedSubstitution

  20. trait TypedSubstitution extends MatchMonadInterface

  21. abstract class Typer extends TyperDiagnostics with Adaptation with TyperContextErrors

Abstract Value Members

  1. abstract val global: Global

    Definition Classes
    TreeDSL

Concrete 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. final def ==(arg0: AnyRef): Boolean

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

    Definition Classes
    Any
  6. final val ALTmode: Int(8192)

    ALTmode is set when we are under a pattern alternative.

    ALTmode is set when we are under a pattern alternative.

    Definition Classes
    Modes
  7. final val BYVALmode: Int(32768)

    BYVALmode is set when we are typing an expression that occurs in a by-value position.

    BYVALmode is set when we are typing an expression that occurs in a by-value position. An expression e1 is in by-value position within expression e2 iff it will be reduced to a value at that position during the evaluation of e2. Examples are by-value function arguments or the conditional of an if-then-else clause. This mode has been added to support continuations.

    Definition Classes
    Modes
  8. object CODE extends AnyRef

  9. final val EXPRmode: Int(1)

    Definition Classes
    Modes
  10. final val FUNmode: Int(16)

    FUNmode is orthogonal to above.

    FUNmode is orthogonal to above. When set we are looking for a method or constructor.

    Definition Classes
    Modes
  11. final val HKmode: Int(16384)

    HKmode is set when we are typing a higher-kinded type.

    HKmode is set when we are typing a higher-kinded type. adapt should then check kind-arity based on the prototypical type's kind arity. Type arguments should not be inferred.

    Definition Classes
    Modes
  12. final val LHSmode: Int(1024)

    LHSmode is set for the left-hand side of an assignment.

    LHSmode is set for the left-hand side of an assignment.

    Definition Classes
    Modes
  13. object MatchTranslator extends AnyRef

  14. final val NOmode: Int(0)

    NOmode, EXPRmode and PATTERNmode are mutually exclusive.

    NOmode, EXPRmode and PATTERNmode are mutually exclusive.

    Definition Classes
    Modes
  15. final val PATTERNmode: Int(2)

    Definition Classes
    Modes
  16. final val POLYmode: Int(32)

    POLYmode is orthogonal to above.

    POLYmode is orthogonal to above. When set expression types can be polymorphic.

    Definition Classes
    Modes
  17. final val QUALmode: Int(64)

    QUALmode is orthogonal to above.

    QUALmode is orthogonal to above. When set expressions may be packages and Java statics modules.

    Definition Classes
    Modes
  18. final val SCCmode: Int(8)

    SCCmode is orthogonal to above.

    SCCmode is orthogonal to above. When set we are in the this or super constructor call of a constructor.

    Definition Classes
    Modes
  19. final val SNDTRYmode: Int(512)

    SNDTRYmode indicates that an application is typed for the 2nd time.

    SNDTRYmode indicates that an application is typed for the 2nd time. In that case functions may no longer be coerced with implicit views.

    Definition Classes
    Modes
  20. final val STARmode: Int(4096)

    STARmode is set when star patterns are allowed.

    STARmode is set when star patterns are allowed. (This was formerly called REGPATmode.)

    Definition Classes
    Modes
  21. final val SUPERCONSTRmode: Int(256)

    SUPERCONSTRmode is set for the super in a superclass constructor call super.

    SUPERCONSTRmode is set for the super in a superclass constructor call super.<init>.

    Definition Classes
    Modes
  22. final val TAPPmode: Int(128)

    TAPPmode is set for the function/type constructor part of a type application.

    TAPPmode is set for the function/type constructor part of a type application. When set we do not decompose PolyTypes.

    Definition Classes
    Modes
  23. final val TYPEPATmode: Int(65536)

    TYPEPATmode is set when we are typing a type in a pattern.

    TYPEPATmode is set when we are typing a type in a pattern.

    Definition Classes
    Modes
  24. final val TYPEmode: Int(4)

    TYPEmode needs a comment.

    TYPEmode needs a comment. <-- XXX.

    Definition Classes
    Modes
  25. object UnTyper extends Traverser

  26. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  27. def clone(): AnyRef

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  28. final def eq(arg0: AnyRef): Boolean

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

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

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  31. final def forArgMode(fun: Tree, mode: Int): Int

  32. final def forFunMode(mode: Int): Int

    Definition Classes
    Modes
  33. final def forTypeMode(mode: Int): Int

    Definition Classes
    Modes
  34. final def getClass(): Class[_]

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

    Definition Classes
    AnyRef → Any
  36. final def inAllModes(mode: Int, required: Int): Boolean

    Definition Classes
    Modes
  37. final def inAnyMode(mode: Int, required: Int): Boolean

    Definition Classes
    Modes
  38. final def inExprModeButNot(mode: Int, prohibited: Int): Boolean

    Definition Classes
    Modes
  39. final def inFunMode(mode: Int): Boolean

    Definition Classes
    Modes
  40. final def inHKMode(mode: Int): Boolean

    Definition Classes
    Modes
  41. final def inNoModes(mode: Int, prohibited: Int): Boolean

    Definition Classes
    Modes
  42. final def inPatternMode(mode: Int): Boolean

    Definition Classes
    Modes
  43. final def inPolyMode(mode: Int): Boolean

    Definition Classes
    Modes
  44. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  45. def modeString(mode: Int): String

    Definition Classes
    Modes
  46. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  47. def newTyper(context: Context): Typer

  48. final def notify(): Unit

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

    Definition Classes
    AnyRef
  50. final def onlyStickyModes(mode: Int): Int

    Definition Classes
    Modes
  51. def resetTyper(): Unit

  52. final val shortenImports: Boolean(false)

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

    Definition Classes
    AnyRef
  54. def toString(): String

    Definition Classes
    AnyRef → Any
  55. val transformed: HashMap[Tree, Tree]

  56. object vpmName extends AnyRef

  57. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws()

Inherited from PatMatVirtualiser

Inherited from TreeDSL

Inherited from Adaptations

Inherited from Modes

Inherited from AnyRef

Inherited from Any