scala.tools.nsc.typechecker.Namers

PolyTypeCompleter

class PolyTypeCompleter extends Analyzer.TypeCompleter with Analyzer.LockingTypeCompleter with Global.FlagAgnosticCompleter

A class representing a lazy type with known type parameters. ctx is the namer context in which the owner is defined.

Constructing a PolyTypeCompleter for a DefDef creates type skolems for the type parameters and assigns them to the tparams trees.

Linear Supertypes
Global.FlagAgnosticCompleter, Analyzer.LockingTypeCompleter, Analyzer.TypeCompleter, Global.LazyType, Global.Type, Global.Annotatable[Global.Type], Global.TypeApiImpl, Global.TypeApi, AnyRef, Any
Type Hierarchy Learn more about scaladoc diagrams
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. PolyTypeCompleter
  2. FlagAgnosticCompleter
  3. LockingTypeCompleter
  4. TypeCompleter
  5. LazyType
  6. Type
  7. Annotatable
  8. TypeApiImpl
  9. TypeApi
  10. AnyRef
  11. 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

Instance Constructors

  1. new PolyTypeCompleter(tparams: List[Global.TypeDef], restp: Analyzer.TypeCompleter, ctx: Analyzer.Context)

Type Members

  1. class FilterMapForeach extends reflect.internal.SymbolTable.FilterTypeCollector

    Definition Classes
    Type

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 Analyzer.PolyTypeCompleter to StringAdd performed by method any2stringadd in scala.Predef.
    Definition Classes
    StringAdd
  5. def ->[B](y: B): (Analyzer.PolyTypeCompleter, B)

    Implicit information
    This member is added by an implicit conversion from Analyzer.PolyTypeCompleter to ArrowAssoc[Analyzer.PolyTypeCompleter] performed by method any2ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  6. def <:<(that: Global.Type): Boolean

    Definition Classes
    Type → TypeApi
  7. def =:=(that: Global.Type): Boolean

    Definition Classes
    Type → TypeApi
  8. final def ==(arg0: AnyRef): Boolean

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

    Definition Classes
    Any
  10. def addThrowsAnnotation(throwableSym: Global.Symbol): Global.Type

    Definition Classes
    Annotatable
  11. def annotations: List[Global.AnnotationInfo]

    Definition Classes
    Type → Annotatable
  12. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  13. def asSeenFrom(pre: Global.Type, clazz: Global.Symbol): Global.Type

    Definition Classes
    Type → TypeApi
  14. def atOwner(owner: Global.Symbol): Global.Type

    Definition Classes
    Type
  15. def baseClasses: List[Global.Symbol]

    Definition Classes
    Type → TypeApi
  16. def baseType(clazz: Global.Symbol): Global.Type

    Definition Classes
    Type → TypeApi
  17. def baseTypeIndex(sym: Global.Symbol): Int

    Definition Classes
    Type
  18. def baseTypeSeq: Global.BaseTypeSeq

    Definition Classes
    Type
  19. def baseTypeSeqDepth: Int

    Definition Classes
    Type
  20. def betaReduce: Global.Type

    Definition Classes
    Type
  21. def boundSyms: Set[Global.Symbol]

    Definition Classes
    Type
  22. def bounds: Global.TypeBounds

    Definition Classes
    Type
  23. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  24. def cloneInfo(owner: Global.Symbol): Global.Type

    Definition Classes
    Type
  25. def collect[T](pf: PartialFunction[Global.Type, T]): List[T]

    Definition Classes
    Type
  26. def complete(sym: Global.Symbol): Unit

    Definition Classes
    LockingTypeCompleter → LazyType → Type
  27. def completeImpl(sym: Global.Symbol): Unit

  28. def computeMemberType(sym: Global.Symbol): Global.Type

    Definition Classes
    Type
  29. def contains(sym: Global.Symbol): Boolean

    Definition Classes
    Type → TypeApi
  30. def containsTp(tp: Global.Type): Boolean

    Definition Classes
    Type
  31. def dealias: Global.Type

    Definition Classes
    Type
  32. def dealiasWiden: Global.Type

    Definition Classes
    Type
  33. def dealiasWidenChain: List[Global.Type]

    Definition Classes
    Type
  34. def decl(name: Global.Name): Global.Symbol

    Definition Classes
    Type
  35. def declaration(name: Global.Name): Global.Symbol

    Definition Classes
    TypeApiImpl → TypeApi
  36. def declarations: Global.Scope

    Definition Classes
    TypeApiImpl → TypeApi
  37. def decls: Global.Scope

    Definition Classes
    Type
  38. def deconst: Global.Type

    Definition Classes
    Type
  39. def deferredMembers: Global.Scope

    Definition Classes
    Type
  40. def directObjectString: String

    Definition Classes
    Type
  41. def dummyArgs: List[Global.Type]

    Attributes
    protected
    Definition Classes
    Type
  42. def ensuring(cond: (Analyzer.PolyTypeCompleter) ⇒ Boolean, msg: ⇒ Any): Analyzer.PolyTypeCompleter

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

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

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

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

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

    Definition Classes
    AnyRef → Any
  48. def erasure: Global.Type

    Definition Classes
    TypeApiImpl → TypeApi
  49. def etaExpand: Global.Type

    Definition Classes
    Type
  50. def exists(p: (Global.Type) ⇒ Boolean): Boolean

    Definition Classes
    Type → TypeApi
  51. def filter(p: (Global.Type) ⇒ Boolean): List[Global.Type]

    Definition Classes
    Type
  52. def filterAnnotations(p: (Global.AnnotationInfo) ⇒ Boolean): Global.Type

    Definition Classes
    Type → Annotatable
  53. def finalResultType: Global.Type

    Definition Classes
    Type
  54. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  55. def find(p: (Global.Type) ⇒ Boolean): Option[Global.Type]

    Definition Classes
    Type → TypeApi
  56. def findMember(name: Global.Name, excludedFlags: Long, requiredFlags: Long, stableOnly: Boolean): Global.Symbol

    Definition Classes
    Type
  57. def findMembers(excludedFlags: Long, requiredFlags: Long): Global.Scope

    Definition Classes
    Type
  58. def firstParent: Global.Type

    Definition Classes
    Type
  59. def foreach(f: (Global.Type) ⇒ Unit): Unit

    Definition Classes
    Type → TypeApi
  60. def formatted(fmtstr: String): String

    Implicit information
    This member is added by an implicit conversion from Analyzer.PolyTypeCompleter to StringFormat performed by method any2stringfmt in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  61. def getAnnotation(cls: Global.Symbol): Option[Global.AnnotationInfo]

    Definition Classes
    Annotatable
  62. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  63. def hasAnnotation(cls: Global.Symbol): Boolean

    Definition Classes
    Annotatable
  64. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  65. def implicitMembers: Global.Scope

    Definition Classes
    Type
  66. def instantiateTypeParams(formals: List[Global.Symbol], actuals: List[Global.Type]): Global.Type

    Definition Classes
    Type
  67. def isComplete: Boolean

    Definition Classes
    LazyType → Type
  68. def isDependentMethodType: Boolean

    Definition Classes
    Type
  69. def isErroneous: Boolean

    Definition Classes
    Type
  70. def isError: Boolean

    Definition Classes
    Type
  71. def isFinalType: Boolean

    Definition Classes
    Type
  72. def isGround: Boolean

    Definition Classes
    Type
  73. def isHigherKinded: Boolean

    Definition Classes
    Type
  74. def isImmediatelyDependent: Boolean

    Definition Classes
    Type
  75. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  76. def isNotNull: Boolean

    Definition Classes
    Type
  77. def isSpliceable: Boolean

    Definition Classes
    TypeApiImpl
  78. def isStable: Boolean

    Definition Classes
    Type
  79. def isStructuralRefinement: Boolean

    Definition Classes
    Type
  80. def isTrivial: Boolean

    Definition Classes
    Type
  81. def isVolatile: Boolean

    Definition Classes
    Type
  82. def isWildcard: Boolean

    Definition Classes
    Type
  83. def kind: String

    Definition Classes
    LazyType → Type
  84. def load(sym: Global.Symbol): Unit

    Definition Classes
    Type
  85. def looselyMatches(that: Global.Type): Boolean

    Definition Classes
    Type
  86. def map(f: (Global.Type) ⇒ Global.Type): Global.Type

    Definition Classes
    Type → TypeApi
  87. def matches(that: Global.Type): Boolean

    Definition Classes
    Type
  88. def matchesPattern(that: Global.Type): Boolean

    Definition Classes
    Type
  89. def member(name: Global.Name): Global.Symbol

    Definition Classes
    Type → TypeApi
  90. def memberBasedOnName(name: Global.Name, excludedFlags: Long): Global.Symbol

    Definition Classes
    Type
  91. def memberInfo(sym: Global.Symbol): Global.Type

    Definition Classes
    Type
  92. def memberType(sym: Global.Symbol): Global.Type

    Definition Classes
    Type
  93. def members: Global.Scope

    Definition Classes
    Type → TypeApi
  94. def membersBasedOnFlags(excludedFlags: Long, requiredFlags: Long): Global.Scope

    Definition Classes
    Type
  95. def membersWithFlags(requiredFlags: Long): Global.Scope

    Definition Classes
    Type
  96. def narrow: Global.Type

    Definition Classes
    Type
  97. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  98. def nonLocalMember(name: Global.Name): Global.Symbol

    Definition Classes
    Type
  99. def nonPrivateDecl(name: Global.Name): Global.Symbol

    Definition Classes
    Type
  100. def nonPrivateDeclaration(name: Global.Name): Global.Symbol

    Definition Classes
    TypeApiImpl
  101. def nonPrivateDecls: List[Global.Symbol]

    Definition Classes
    Type
  102. def nonPrivateMember(name: Global.Name): Global.Symbol

    Definition Classes
    Type
  103. def nonPrivateMemberAdmitting(name: Global.Name, admit: Long): Global.Symbol

    Definition Classes
    Type
  104. def nonPrivateMembers: Global.Scope

    Definition Classes
    Type
  105. def nonPrivateMembersAdmitting(admit: Long): Global.Scope

    Definition Classes
    Type
  106. def nonPrivateMembersWithFlags(requiredFlags: Long): Global.Scope

    Definition Classes
    Type
  107. def normalize: Global.Type

    Definition Classes
    Type → TypeApi
  108. def notNull: Global.Type

    Definition Classes
    Type
  109. final def notify(): Unit

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

    Definition Classes
    AnyRef
  111. def objectPrefix: String

    Attributes
    protected
    Definition Classes
    Type
  112. def packagePrefix: String

    Attributes
    protected
    Definition Classes
    Type
  113. def paramSectionCount: Int

    Definition Classes
    Type
  114. def paramTypes: List[Global.Type]

    Definition Classes
    Type
  115. def params: List[Global.Symbol]

    Definition Classes
    Type
  116. def paramss: List[List[Global.Symbol]]

    Definition Classes
    Type
  117. def parents: List[Global.Type]

    Definition Classes
    Type
  118. def prefix: Global.Type

    Definition Classes
    Type
  119. def prefixChain: List[Global.Type]

    Definition Classes
    Type
  120. def prefixString: String

    Definition Classes
    Type
  121. def remove(clazz: Global.Symbol): Global.Type

    Definition Classes
    Type
  122. def removeAnnotation(cls: Global.Symbol): Global.Type

    Definition Classes
    Annotatable
  123. def resultApprox: Global.Type

    Definition Classes
    Type
  124. def resultType(actuals: List[Global.Type]): Global.Type

    Definition Classes
    Type
  125. def resultType: Global.Type

    Definition Classes
    Type
  126. def safeToString: String

    Definition Classes
    LazyType → Type
  127. def selfsym: Global.Symbol

    Definition Classes
    Type
  128. def setAnnotations(annots: List[Global.AnnotationInfo]): Global.Type

    Definition Classes
    Type → Annotatable
  129. def skolemizeExistential: Global.Type

    Definition Classes
    Type
  130. def skolemizeExistential(owner: Global.Symbol, origin: AnyRef): Global.Type

    Definition Classes
    Type
  131. def skolemsExceptMethodTypeParams: List[Global.Symbol]

    Definition Classes
    Type
  132. def specializes(sym: Global.Symbol): Boolean

    Definition Classes
    Type
  133. def stat_<:<(that: Global.Type): Boolean

    Definition Classes
    Type
  134. def stripAnnotations: Global.Type

    Definition Classes
    Type
  135. def subst(from: List[Global.Symbol], to: List[Global.Type]): Global.Type

    Definition Classes
    Type
  136. def substSym(from: List[Global.Symbol], to: List[Global.Symbol]): Global.Type

    Definition Classes
    Type
  137. def substThis(from: Global.Symbol, to: Global.Symbol): Global.Type

    Definition Classes
    Type
  138. def substThis(from: Global.Symbol, to: Global.Type): Global.Type

    Definition Classes
    Type
  139. def substThisAndSym(from: Global.Symbol, to: Global.Type, symsFrom: List[Global.Symbol], symsTo: List[Global.Symbol]): Global.Type

    Definition Classes
    Type
  140. def substituteSymbols(from: List[Global.Symbol], to: List[Global.Symbol]): Global.Type

    Definition Classes
    TypeApiImpl → TypeApi
  141. def substituteTypes(from: List[Global.Symbol], to: List[Global.Type]): Global.Type

    Definition Classes
    TypeApiImpl → TypeApi
  142. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  143. def takesTypeArgs: Boolean

    Definition Classes
    Type → TypeApi
  144. def termSymbol: Global.Symbol

    Definition Classes
    Type → TypeApi
  145. def termSymbolDirect: Global.Symbol

    Definition Classes
    Type
  146. def throwsAnnotations(): List[Global.Symbol]

    Definition Classes
    Annotatable
  147. def toLongString: String

    Definition Classes
    Type
  148. def toString(): String

    Definition Classes
    Type → AnyRef → Any
  149. val tree: Global.Tree

    Definition Classes
    PolyTypeCompleterTypeCompleter
  150. def trimPrefix(str: String): String

    Definition Classes
    Type
  151. def typeArgs: List[Global.Type]

    Definition Classes
    Type
  152. def typeArguments: List[Global.Type]

    Definition Classes
    TypeApiImpl
  153. def typeConstructor: Global.Type

    Definition Classes
    Type → TypeApi
  154. def typeOfThis: Global.Type

    Definition Classes
    Type
  155. val typeParams: collection.immutable.List[Global.Symbol]

    Definition Classes
    PolyTypeCompleter → Type
  156. def typeSymbol: Global.Symbol

    Definition Classes
    Type → TypeApi
  157. def typeSymbolDirect: Global.Symbol

    Definition Classes
    Type
  158. def underlying: Global.Type

    Definition Classes
    Type
  159. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  162. def weak_<:<(that: Global.Type): Boolean

    Definition Classes
    Type → TypeApi
  163. def widen: Global.Type

    Definition Classes
    Type → TypeApi
  164. final def withAnnotation(annot: Global.AnnotationInfo): Global.Type

    Definition Classes
    Annotatable
  165. def withAnnotations(annots: List[Global.AnnotationInfo]): Global.Type

    Definition Classes
    Type → Annotatable
  166. def withFilter(p: (Global.Type) ⇒ Boolean): FilterMapForeach

    Definition Classes
    Type
  167. def withSelfsym(sym: Global.Symbol): Global.Type

    Definition Classes
    Type
  168. def withoutAnnotations: Global.Type

    Definition Classes
    Type → Annotatable
  169. def [B](y: B): (Analyzer.PolyTypeCompleter, B)

    Implicit information
    This member is added by an implicit conversion from Analyzer.PolyTypeCompleter to ArrowAssoc[Analyzer.PolyTypeCompleter] 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 Analyzer.PolyTypeCompleter 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:
    (polyTypeCompleter: StringAdd).self
    Definition Classes
    StringAdd
  2. val self: Any

    Implicit information
    This member is added by an implicit conversion from Analyzer.PolyTypeCompleter 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:
    (polyTypeCompleter: StringFormat).self
    Definition Classes
    StringFormat

Deprecated Value Members

  1. def x: Analyzer.PolyTypeCompleter

    Implicit information
    This member is added by an implicit conversion from Analyzer.PolyTypeCompleter to ArrowAssoc[Analyzer.PolyTypeCompleter] 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:
    (polyTypeCompleter: ArrowAssoc[Analyzer.PolyTypeCompleter]).x
    Definition Classes
    ArrowAssoc
    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use leftOfArrow instead

  2. def x: Analyzer.PolyTypeCompleter

    Implicit information
    This member is added by an implicit conversion from Analyzer.PolyTypeCompleter to Ensuring[Analyzer.PolyTypeCompleter] 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:
    (polyTypeCompleter: Ensuring[Analyzer.PolyTypeCompleter]).x
    Definition Classes
    Ensuring
    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use resultOfEnsuring instead

Inherited from Global.FlagAgnosticCompleter

Inherited from Analyzer.LockingTypeCompleter

Inherited from Analyzer.TypeCompleter

Inherited from Global.LazyType

Inherited from Global.Type

Inherited from Global.Annotatable[Global.Type]

Inherited from Global.TypeApiImpl

Inherited from Global.TypeApi

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion any2stringadd from Analyzer.PolyTypeCompleter to StringAdd

Inherited by implicit conversion any2stringfmt from Analyzer.PolyTypeCompleter to StringFormat

Inherited by implicit conversion any2ArrowAssoc from Analyzer.PolyTypeCompleter to ArrowAssoc[Analyzer.PolyTypeCompleter]

Inherited by implicit conversion any2Ensuring from Analyzer.PolyTypeCompleter to Ensuring[Analyzer.PolyTypeCompleter]

Ungrouped