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. Protected

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[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  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. final def dealiasWiden: Global.Type
    Definition Classes
    Type
    Annotations
    @tailrec()
  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: AnyRef): 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[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[_ <: AnyRef]
    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 isJavaVarargsMethod: Boolean
    Definition Classes
    LazyType
  76. def isShowAsInfixType: Boolean
    Definition Classes
    Type
  77. def isSpliceable: Boolean
    Definition Classes
    TypeApiImpl
  78. final def isStable: Boolean
    Definition Classes
    Type
  79. def isStructuralRefinement: Boolean
    Definition Classes
    Type
  80. def isTrivial: Boolean
    Definition Classes
    Type
  81. final def isVolatile: Boolean
    Definition Classes
    Type
  82. def isWildcard: Boolean
    Definition Classes
    Type
  83. def javaThrownExceptions: List[Global.Symbol]
    Definition Classes
    LazyType
  84. def kind: String
    Definition Classes
    LazyType → Type
  85. def load(sym: Global.Symbol): Unit
    Definition Classes
    Type
  86. def looselyMatches(that: Global.Type): Boolean
    Definition Classes
    Type
  87. def lowerBound: Global.Type
    Definition Classes
    Type
  88. def map(f: (Global.Type) => Global.Type): Global.Type
    Definition Classes
    Type → TypeApi
  89. def mapOver(map: Global.TypeMap): Global.Type
    Definition Classes
    Type
  90. def matches(that: Global.Type): Boolean
    Definition Classes
    Type
  91. def matchesPattern(that: Global.Type): Boolean
    Definition Classes
    Type
  92. def member(name: Global.Name): Global.Symbol
    Definition Classes
    Type → TypeApi
  93. def memberBasedOnName(name: Global.Name, excludedFlags: Long): Global.Symbol
    Definition Classes
    Type
  94. def memberInfo(sym: Global.Symbol): Global.Type
    Definition Classes
    Type
  95. def memberType(sym: Global.Symbol): Global.Type
    Definition Classes
    Type
  96. def members: Global.Scope
    Definition Classes
    Type → TypeApi
  97. def membersBasedOnFlags(excludedFlags: Long, requiredFlags: Long): Global.Scope
    Definition Classes
    Type
  98. def nameAndArgsString: String
    Definition Classes
    Type
  99. def narrow: Global.Type
    Definition Classes
    Type
  100. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  101. def nonLocalMember(name: Global.Name): Global.Symbol
    Definition Classes
    Type
  102. def nonPrivateDecl(name: Global.Name): Global.Symbol
    Definition Classes
    Type
  103. def nonPrivateDecls: List[Global.Symbol]
    Definition Classes
    Type
  104. def nonPrivateMember(name: Global.Name): Global.Symbol
    Definition Classes
    Type
  105. def nonPrivateMemberAdmitting(name: Global.Name, admit: Long): Global.Symbol
    Definition Classes
    Type
  106. def nonPrivateMembers: Global.Scope
    Definition Classes
    Type
  107. def nonPrivateMembersAdmitting(admit: Long): Global.Scope
    Definition Classes
    Type
  108. def normalize: Global.Type
    Definition Classes
    Type → TypeApi
  109. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  110. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  111. def objectPrefix: String
    Attributes
    protected
    Definition Classes
    Type
  112. final def orElse(alt: => Global.Type): Global.Type
    Definition Classes
    Type → TypeApi
    Annotations
    @inline()
  113. def packageObject: Global.Symbol
    Definition Classes
    Type
  114. def packagePrefix: String
    Attributes
    protected
    Definition Classes
    Type
  115. def paramLists: List[List[Global.Symbol]]
    Definition Classes
    TypeApiImpl → TypeApi
  116. def paramSectionCount: Int
    Definition Classes
    Type
  117. def paramTypes: List[Global.Type]
    Definition Classes
    Type
  118. def params: List[Global.Symbol]
    Definition Classes
    Type
  119. def paramss: List[List[Global.Symbol]]
    Definition Classes
    Type → TypeApi
  120. def parents: List[Global.Type]
    Definition Classes
    Type
  121. def prefix: Global.Type
    Definition Classes
    Type
  122. def prefixChain: List[Global.Type]
    Definition Classes
    Type
  123. def prefixString: String
    Definition Classes
    Type
  124. def removeAnnotation(cls: Global.Symbol): Global.Type
    Definition Classes
    Annotatable
  125. def resultApprox: Global.Type
    Definition Classes
    Type
  126. def resultType(actuals: List[Global.Type]): Global.Type
    Definition Classes
    Type
  127. def resultType: Global.Type
    Definition Classes
    Type → TypeApi
  128. def safeToString: String
    Definition Classes
    LazyType → Type
  129. def setAnnotations(annots: List[Global.AnnotationInfo]): Global.Type
    Definition Classes
    Type → Annotatable
  130. def skolemizeExistential: Global.Type
    Definition Classes
    Type
  131. def skolemizeExistential(owner: Global.Symbol, origin: AnyRef): Global.Type
    Definition Classes
    Type
  132. def skolemsExceptMethodTypeParams: List[Global.Symbol]
    Definition Classes
    Type
  133. def stat_<:<(that: Global.Type): Boolean
    Definition Classes
    Type
  134. def staticAnnotations: collection.immutable.List[Global.AnnotationInfo]
    Definition Classes
    Annotatable
  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 toLongString: String
    Definition Classes
    Type
  147. final def toString(): String
    Definition Classes
    Type → AnyRef → Any
  148. val tree: Global.Tree
    Definition Classes
    PolyTypeCompleterTypeCompleter
  149. def trimPrefix(str: String): String
    Definition Classes
    Type
  150. def typeArgs: List[Global.Type]
    Definition Classes
    Type → TypeApi
  151. def typeArguments: List[Global.Type]
    Definition Classes
    TypeApiImpl
  152. def typeConstructor: Global.Type
    Definition Classes
    Type → TypeApi
  153. def typeOfThis: Global.Type
    Definition Classes
    Type
  154. val typeParams: collection.immutable.List[Global.Symbol]
    Definition Classes
    PolyTypeCompleter → Type → TypeApi
  155. def typeSymbol: Global.Symbol
    Definition Classes
    Type → TypeApi
  156. def typeSymbolDirect: Global.Symbol
    Definition Classes
    Type
  157. def underlying: Global.Type
    Definition Classes
    Type
  158. def upperBound: Global.Type
    Definition Classes
    Type
  159. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  160. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  161. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  162. def weak_<:<(that: Global.Type): Boolean
    Definition Classes
    Type → TypeApi
  163. def widen: Global.Type
    Definition Classes
    Type → TypeApi
  164. def withAnnotation(anno: Global.AnnotationInfo): Global.Type
    Definition Classes
    Type → 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 withoutAnnotations: Global.Type
    Definition Classes
    Type → Annotatable

Deprecated Value Members

  1. 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