Packages

c

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.

Source
Namers.scala
Type Hierarchy
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 StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
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: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. def +(other: String): String
    Implicit
    This member is added by an implicit conversion from Analyzer.PolyTypeCompleter toany2stringadd[Analyzer.PolyTypeCompleter] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  4. def ->[B](y: B): (Analyzer.PolyTypeCompleter, B)
    Implicit
    This member is added by an implicit conversion from Analyzer.PolyTypeCompleter toArrowAssoc[Analyzer.PolyTypeCompleter] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  5. def <:<(that: Global.Type): Boolean
    Definition Classes
    Type → TypeApi
  6. def =:=(that: Global.Type): Boolean
    Definition Classes
    Type → TypeApi
  7. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  8. def addThrowsAnnotation(throwableSym: Global.Symbol): Global.Type
    Definition Classes
    Annotatable
  9. def annotations: List[Global.AnnotationInfo]
    Definition Classes
    Type → Annotatable
  10. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  11. def asSeenFrom(pre: Global.Type, clazz: Global.Symbol): Global.Type
    Definition Classes
    Type → TypeApi
  12. def atOwner(owner: Global.Symbol): Global.Type
    Definition Classes
    Type
  13. def baseClasses: List[Global.Symbol]
    Definition Classes
    Type → TypeApi
  14. def baseType(clazz: Global.Symbol): Global.Type
    Definition Classes
    Type → TypeApi
  15. def baseTypeIndex(sym: Global.Symbol): Int
    Definition Classes
    Type
  16. def baseTypeSeq: Global.BaseTypeSeq
    Definition Classes
    Type
  17. def baseTypeSeqDepth: Depth
    Definition Classes
    Type
  18. def betaReduce: Global.Type
    Definition Classes
    Type
  19. def bounds: Global.TypeBounds
    Definition Classes
    Type
  20. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @native() @throws(classOf[java.lang.CloneNotSupportedException])
  21. def cloneInfo(owner: Global.Symbol): Global.Type
    Definition Classes
    Type
  22. def collect[T](pf: PartialFunction[Global.Type, T]): List[T]
    Definition Classes
    Type
  23. def companion: Global.Type
    Definition Classes
    TypeApiImpl → TypeApi
  24. def complete(sym: Global.Symbol): Unit
    Definition Classes
    LockingTypeCompleter → LazyType → Type
  25. def completeImpl(sym: Global.Symbol): Unit
  26. def computeMemberType(sym: Global.Symbol): Global.Type
    Definition Classes
    Type
  27. def contains(sym: Global.Symbol): Boolean
    Definition Classes
    Type → TypeApi
  28. def dealias: Global.Type
    Definition Classes
    Type → TypeApi
  29. def dealiasWiden: Global.Type
    Definition Classes
    Type
  30. def dealiasWidenChain: List[Global.Type]
    Definition Classes
    Type
  31. def decl(name: Global.Name): Global.Symbol
    Definition Classes
    Type → TypeApi
  32. def declaration(name: Global.Name): Global.Symbol
    Definition Classes
    TypeApiImpl → TypeApi
  33. def declarations: Global.Scope
    Definition Classes
    TypeApiImpl → TypeApi
  34. def decls: Global.Scope
    Definition Classes
    Type → TypeApi
  35. def deconst: Global.Type
    Definition Classes
    Type
  36. def deferredMembers: Global.Scope
    Definition Classes
    Type
  37. def directObjectString: String
    Definition Classes
    Type
  38. def dummyArgs: List[Global.Type]
    Attributes
    protected
    Definition Classes
    Type
  39. def ensuring(cond: (Analyzer.PolyTypeCompleter) => Boolean, msg: => Any): Analyzer.PolyTypeCompleter
    Implicit
    This member is added by an implicit conversion from Analyzer.PolyTypeCompleter toEnsuring[Analyzer.PolyTypeCompleter] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  40. def ensuring(cond: (Analyzer.PolyTypeCompleter) => Boolean): Analyzer.PolyTypeCompleter
    Implicit
    This member is added by an implicit conversion from Analyzer.PolyTypeCompleter toEnsuring[Analyzer.PolyTypeCompleter] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  41. def ensuring(cond: Boolean, msg: => Any): Analyzer.PolyTypeCompleter
    Implicit
    This member is added by an implicit conversion from Analyzer.PolyTypeCompleter toEnsuring[Analyzer.PolyTypeCompleter] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  42. def ensuring(cond: Boolean): Analyzer.PolyTypeCompleter
    Implicit
    This member is added by an implicit conversion from Analyzer.PolyTypeCompleter toEnsuring[Analyzer.PolyTypeCompleter] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  43. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  44. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  45. def erasure: Global.Type
    Definition Classes
    TypeApiImpl → TypeApi
  46. def etaExpand: Global.Type
    Definition Classes
    Type → TypeApi
  47. def exists(p: (Global.Type) => Boolean): Boolean
    Definition Classes
    Type → TypeApi
  48. def filterAnnotations(p: (Global.AnnotationInfo) => Boolean): Global.Type
    Definition Classes
    Type → Annotatable
  49. final def finalResultType: Global.Type
    Definition Classes
    Type → TypeApi
  50. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  51. def find(p: (Global.Type) => Boolean): Option[Global.Type]
    Definition Classes
    Type → TypeApi
  52. def findMember(name: Global.Name, excludedFlags: Long, requiredFlags: Long, stableOnly: Boolean): Global.Symbol
    Definition Classes
    Type
  53. def findMembers(excludedFlags: Long, requiredFlags: Long): Global.Scope
    Definition Classes
    Type
  54. def firstParent: Global.Type
    Definition Classes
    Type
  55. def foldOver(folder: Global.TypeFolder): Unit
    Definition Classes
    Type
  56. def forceDirectSuperclasses(): Unit
    Definition Classes
    TypeCompleter → Type
  57. def foreach(f: (Global.Type) => Unit): Unit
    Definition Classes
    Type → TypeApi
  58. def formatted(fmtstr: String): String
    Implicit
    This member is added by an implicit conversion from Analyzer.PolyTypeCompleter toStringFormat[Analyzer.PolyTypeCompleter] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  59. def getAnnotation(cls: Global.Symbol): Option[Global.AnnotationInfo]
    Definition Classes
    Annotatable
  60. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  61. def hasAnnotation(cls: Global.Symbol): Boolean
    Definition Classes
    Annotatable
  62. def hasNonPrivateMember(name: Global.Name): Boolean
    Definition Classes
    Type
  63. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  64. def implicitMembers: Global.Scope
    Definition Classes
    Type
  65. def instantiateTypeParams(formals: List[Global.Symbol], actuals: List[Global.Type]): Global.Type
    Definition Classes
    Type
  66. def isComplete: Boolean
    Definition Classes
    LazyType → Type
  67. def isDependentMethodType: Boolean
    Definition Classes
    Type
  68. def isErroneous: Boolean
    Definition Classes
    Type
  69. def isError: Boolean
    Definition Classes
    Type
  70. def isFinalType: Boolean
    Definition Classes
    Type
  71. def isGround: Boolean
    Definition Classes
    Type
  72. def isHigherKinded: Boolean
    Definition Classes
    Type
  73. def isImmediatelyDependent: Boolean
    Definition Classes
    Type
  74. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  75. def isShowAsInfixType: Boolean
    Definition Classes
    Type
  76. def isSpliceable: Boolean
    Definition Classes
    TypeApiImpl
  77. final def isStable: Boolean
    Definition Classes
    Type
  78. def isStructuralRefinement: Boolean
    Definition Classes
    Type
  79. def isTrivial: Boolean
    Definition Classes
    Type
  80. final def isVolatile: Boolean
    Definition Classes
    Type
  81. def isWildcard: Boolean
    Definition Classes
    Type
  82. def kind: String
    Definition Classes
    LazyType → Type
  83. def load(sym: Global.Symbol): Unit
    Definition Classes
    Type
  84. def looselyMatches(that: Global.Type): Boolean
    Definition Classes
    Type
  85. def lowerBound: Global.Type
    Definition Classes
    Type
  86. def map(f: (Global.Type) => Global.Type): Global.Type
    Definition Classes
    Type → TypeApi
  87. def mapOver(map: Global.TypeMap): Global.Type
    Definition Classes
    Type
  88. def matches(that: Global.Type): Boolean
    Definition Classes
    Type
  89. def matchesPattern(that: Global.Type): Boolean
    Definition Classes
    Type
  90. def member(name: Global.Name): Global.Symbol
    Definition Classes
    Type → TypeApi
  91. def memberBasedOnName(name: Global.Name, excludedFlags: Long): Global.Symbol
    Definition Classes
    Type
  92. def memberInfo(sym: Global.Symbol): Global.Type
    Definition Classes
    Type
  93. def memberType(sym: Global.Symbol): Global.Type
    Definition Classes
    Type
  94. def members: Global.Scope
    Definition Classes
    Type → TypeApi
  95. def membersBasedOnFlags(excludedFlags: Long, requiredFlags: Long): Global.Scope
    Definition Classes
    Type
  96. def nameAndArgsString: String
    Definition Classes
    Type
  97. def narrow: Global.Type
    Definition Classes
    Type
  98. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  99. def nonLocalMember(name: Global.Name): Global.Symbol
    Definition Classes
    Type
  100. def nonPrivateDecl(name: Global.Name): Global.Symbol
    Definition Classes
    Type
  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 normalize: Global.Type
    Definition Classes
    Type → TypeApi
  107. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  108. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  109. def objectPrefix: String
    Attributes
    protected
    Definition Classes
    Type
  110. final def orElse(alt: => Global.Type): Global.Type
    Definition Classes
    Type → TypeApi
    Annotations
    @inline()
  111. def packageObject: Global.Symbol
    Definition Classes
    Type
  112. def packagePrefix: String
    Attributes
    protected
    Definition Classes
    Type
  113. def paramLists: List[List[Global.Symbol]]
    Definition Classes
    TypeApiImpl → TypeApi
  114. def paramSectionCount: Int
    Definition Classes
    Type
  115. def paramTypes: List[Global.Type]
    Definition Classes
    Type
  116. def params: List[Global.Symbol]
    Definition Classes
    Type
  117. def paramss: List[List[Global.Symbol]]
    Definition Classes
    Type → TypeApi
  118. def parents: List[Global.Type]
    Definition Classes
    Type
  119. def prefix: Global.Type
    Definition Classes
    Type
  120. def prefixChain: List[Global.Type]
    Definition Classes
    Type
  121. def prefixString: String
    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 → TypeApi
  126. def safeToString: String
    Definition Classes
    LazyType → Type
  127. def setAnnotations(annots: List[Global.AnnotationInfo]): Global.Type
    Definition Classes
    Type → Annotatable
  128. def skolemizeExistential: Global.Type
    Definition Classes
    Type
  129. def skolemizeExistential(owner: Global.Symbol, origin: AnyRef): Global.Type
    Definition Classes
    Type
  130. def skolemsExceptMethodTypeParams: List[Global.Symbol]
    Definition Classes
    Type
  131. def stat_<:<(that: Global.Type): Boolean
    Definition Classes
    Type
  132. def staticAnnotations: collection.immutable.List[Global.AnnotationInfo]
    Definition Classes
    Annotatable
  133. def subst(from: List[Global.Symbol], to: List[Global.Type]): Global.Type
    Definition Classes
    Type
  134. def substSym(from: List[Global.Symbol], to: List[Global.Symbol]): Global.Type
    Definition Classes
    Type
  135. def substThis(from: Global.Symbol, to: Global.Symbol): Global.Type
    Definition Classes
    Type
  136. def substThis(from: Global.Symbol, to: Global.Type): Global.Type
    Definition Classes
    Type
  137. def substThisAndSym(from: Global.Symbol, to: Global.Type, symsFrom: List[Global.Symbol], symsTo: List[Global.Symbol]): Global.Type
    Definition Classes
    Type
  138. def substituteSymbols(from: List[Global.Symbol], to: List[Global.Symbol]): Global.Type
    Definition Classes
    TypeApiImpl → TypeApi
  139. def substituteTypes(from: List[Global.Symbol], to: List[Global.Type]): Global.Type
    Definition Classes
    TypeApiImpl → TypeApi
  140. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  141. def takesTypeArgs: Boolean
    Definition Classes
    Type → TypeApi
  142. def termSymbol: Global.Symbol
    Definition Classes
    Type → TypeApi
  143. def termSymbolDirect: Global.Symbol
    Definition Classes
    Type
  144. def toLongString: String
    Definition Classes
    Type
  145. final def toString(): String
    Definition Classes
    Type → AnyRef → Any
  146. val tree: Global.Tree
    Definition Classes
    PolyTypeCompleterTypeCompleter
  147. def trimPrefix(str: String): String
    Definition Classes
    Type
  148. def typeArgs: List[Global.Type]
    Definition Classes
    Type → TypeApi
  149. def typeArguments: List[Global.Type]
    Definition Classes
    TypeApiImpl
  150. def typeConstructor: Global.Type
    Definition Classes
    Type → TypeApi
  151. def typeOfThis: Global.Type
    Definition Classes
    Type
  152. val typeParams: collection.immutable.List[Global.Symbol]
    Definition Classes
    PolyTypeCompleter → Type → TypeApi
  153. def typeSymbol: Global.Symbol
    Definition Classes
    Type → TypeApi
  154. def typeSymbolDirect: Global.Symbol
    Definition Classes
    Type
  155. def underlying: Global.Type
    Definition Classes
    Type
  156. def upperBound: Global.Type
    Definition Classes
    Type
  157. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  158. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  159. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @throws(classOf[java.lang.InterruptedException])
  160. def weak_<:<(that: Global.Type): Boolean
    Definition Classes
    Type → TypeApi
  161. def widen: Global.Type
    Definition Classes
    Type → TypeApi
  162. final def withAnnotation(annot: Global.AnnotationInfo): Global.Type
    Definition Classes
    Annotatable
  163. def withAnnotations(annots: List[Global.AnnotationInfo]): Global.Type
    Definition Classes
    Type → Annotatable
  164. def withFilter(p: (Global.Type) => Boolean): FilterMapForeach
    Definition Classes
    Type
  165. def withoutAnnotations: Global.Type
    Definition Classes
    Type → Annotatable

Deprecated Value Members

  1. def boundSyms: Set[Global.Symbol]
    Definition Classes
    Type
    Annotations
    @deprecated
    Deprecated

    (Since version 2.12.3) No longer used in the compiler implementation

  2. def [B](y: B): (Analyzer.PolyTypeCompleter, B)
    Implicit
    This member is added by an implicit conversion from Analyzer.PolyTypeCompleter toArrowAssoc[Analyzer.PolyTypeCompleter] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @deprecated
    Deprecated

    (Since version 2.13.0) Use -> instead. If you still wish to display it as one character, consider using a font with programming ligatures such as Fira Code.

Inherited from Analyzer.TypeCompleter

Inherited from Global.LazyType

Inherited from Global.Type

Inherited from Global.TypeApiImpl

Inherited from Global.TypeApi

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion any2stringadd fromAnalyzer.PolyTypeCompleter to any2stringadd[Analyzer.PolyTypeCompleter]

Inherited by implicit conversion StringFormat fromAnalyzer.PolyTypeCompleter to StringFormat[Analyzer.PolyTypeCompleter]

Inherited by implicit conversion Ensuring fromAnalyzer.PolyTypeCompleter to Ensuring[Analyzer.PolyTypeCompleter]

Inherited by implicit conversion ArrowAssoc fromAnalyzer.PolyTypeCompleter to ArrowAssoc[Analyzer.PolyTypeCompleter]

Ungrouped