Scala Compiler2.13.18 < Back


# Packages

-  package root

  The Scala compiler and reflection APIs.

  The Scala compiler and reflection APIs.

  Definition Classes
    root
-  package scala
  Definition Classes
    root
-  package tools
  Definition Classes
    scala
-  package nsc
  Definition Classes
    tools
-  package symtab
  Definition Classes
    nsc
-  abstract class SymbolLoaders extends AnyRef

  This class ...

  This class ...

  Definition Classes
    symtab
- ClassfileLoader
- PackageLoader
- SourcefileLoader
- SymbolLoader
- moduleClassLoader

c

scala.tools.nsc.symtab.SymbolLoaders

# SymbolLoader

###

#### abstract class SymbolLoader extends (symbolTable)#SymLoader

A lazy type that completes itself by calling parameter doComplete. Any linked modules/classes or module classes are also initialized. Todo: consider factoring out behavior from TopClassCompleter/SymbolLoader into supertrait SymLoader

Source
  SymbolLoaders.scala

Linear Supertypes
(symbolTable)#SymLoader, (symbolTable)#LazyType, (symbolTable)#Type, (symbolTable)#Annotatable[(symbolTable)#Type], (symbolTable)#TypeApiImpl, (symbolTable)#TypeApi, AnyRef, Any
Known Subclasses
ClassfileLoader, PackageLoader, SourcefileLoader, moduleClassLoader
Type Hierarchy

Ordering

1. Alphabetic
2. By Inheritance

Inherited

1. SymbolLoader
2. SymLoader
3. LazyType
4. Type
5. Annotatable
6. TypeApiImpl
7. TypeApi
8. AnyRef
9. 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 SymbolLoader()

### Type Members

1.  class FilterMapForeach extends reflect.internal.SymbolTable.FilterTypeCollector
   Definition Classes
     Type

### Abstract Value Members

1.  abstract def description: String

   Description of the resource (ClassPath, AbstractFile) being processed by this loader

   Description of the resource (ClassPath, AbstractFile) being processed by this loader

   Attributes
     protected
2.  abstract def doComplete(root: (symbolTable)#Symbol): Unit

   Load source or class file for `root`, return

   Load source or class file for `root`, return

   Attributes
     protected

### Concrete 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 SymbolLoader toany2stringadd[SymbolLoader] performed by method any2stringadd in scala.Predef.
   Definition Classes
     any2stringadd
4.  def ->[B](y: B): (SymbolLoader, B)
   Implicit
     This member is added by an implicit conversion from SymbolLoader toArrowAssoc[SymbolLoader] performed by method ArrowAssoc in scala.Predef.
   Definition Classes
     ArrowAssoc
   Annotations
     @inline()
5.  def <:<(that: (symbolTable)#Type): Boolean
   Definition Classes
     Type → TypeApi
6.  def =:=(that: (symbolTable)#Type): Boolean
   Definition Classes
     Type → TypeApi
7.  final def ==(arg0: Any): Boolean
   Definition Classes
     AnyRef → Any
8.  def addThrowsAnnotation(throwableSym: (symbolTable)#Symbol): (symbolTable)#Type
   Definition Classes
     Annotatable
9.  def annotations: List[(symbolTable)#AnnotationInfo]
   Definition Classes
     Type → Annotatable
10.  final def asInstanceOf[T0]: T0
    Definition Classes
      Any
11.  def asSeenFrom(pre: (symbolTable)#Type, clazz: (symbolTable)#Symbol): (symbolTable)#Type
    Definition Classes
      Type → TypeApi
12.  def associatedFile(self: (symbolTable)#Symbol): AbstractFile
13.  def atOwner(owner: (symbolTable)#Symbol): (symbolTable)#Type
    Definition Classes
      Type
14.  def baseClasses: List[(symbolTable)#Symbol]
    Definition Classes
      Type → TypeApi
15.  def baseType(clazz: (symbolTable)#Symbol): (symbolTable)#Type
    Definition Classes
      Type → TypeApi
16.  def baseTypeIndex(sym: (symbolTable)#Symbol): Int
    Definition Classes
      Type
17.  def baseTypeSeq: (symbolTable)#BaseTypeSeq
    Definition Classes
      Type
18.  def baseTypeSeqDepth: Depth
    Definition Classes
      Type
19.  def betaReduce: (symbolTable)#Type
    Definition Classes
      Type
20.  def bounds: (symbolTable)#TypeBounds
    Definition Classes
      Type
21.  def clone(): AnyRef
    Attributes
      protected[lang]
    Definition Classes
      AnyRef
    Annotations
      @throws(classOf[java.lang.CloneNotSupportedException]) @native()
22.  def cloneInfo(owner: (symbolTable)#Symbol): (symbolTable)#Type
    Definition Classes
      Type
23.  def collect[T](pf: PartialFunction[(symbolTable)#Type, T]): List[T]
    Definition Classes
      Type
24.  def companion: (symbolTable)#Type
    Definition Classes
      TypeApiImpl → TypeApi
25.  def complete(root: (symbolTable)#Symbol): Unit
    Definition Classes
      SymbolLoader → LazyType → Type
26.  def computeMemberType(sym: (symbolTable)#Symbol): (symbolTable)#Type
    Definition Classes
      Type
27.  def contains(sym: (symbolTable)#Symbol): Boolean
    Definition Classes
      Type → TypeApi
28.  def dealias: (symbolTable)#Type
    Definition Classes
      Type → TypeApi
29.  final def dealiasWiden: (symbolTable)#Type
    Definition Classes
      Type
    Annotations
      @tailrec()
30.  def dealiasWidenChain: List[(symbolTable)#Type]
    Definition Classes
      Type
31.  def decl(name: (symbolTable)#Name): (symbolTable)#Symbol
    Definition Classes
      Type → TypeApi
32.  def declaration(name: (symbolTable)#Name): (symbolTable)#Symbol
    Definition Classes
      TypeApiImpl → TypeApi
33.  def declarations: (symbolTable)#Scope
    Definition Classes
      TypeApiImpl → TypeApi
34.  def decls: (symbolTable)#Scope
    Definition Classes
      Type → TypeApi
35.  def deconst: (symbolTable)#Type
    Definition Classes
      Type
36.  def deferredMembers: (symbolTable)#Scope
    Definition Classes
      Type
37.  def directObjectString: String
    Definition Classes
      Type
38.  def dummyArgs: List[(symbolTable)#Type]
    Attributes
      protected
    Definition Classes
      Type
39.  def ensuring(cond: (SymbolLoader) => Boolean, msg: => Any): SymbolLoader
    Implicit
      This member is added by an implicit conversion from SymbolLoader toEnsuring[SymbolLoader] performed by method Ensuring in scala.Predef.
    Definition Classes
      Ensuring
40.  def ensuring(cond: (SymbolLoader) => Boolean): SymbolLoader
    Implicit
      This member is added by an implicit conversion from SymbolLoader toEnsuring[SymbolLoader] performed by method Ensuring in scala.Predef.
    Definition Classes
      Ensuring
41.  def ensuring(cond: Boolean, msg: => Any): SymbolLoader
    Implicit
      This member is added by an implicit conversion from SymbolLoader toEnsuring[SymbolLoader] performed by method Ensuring in scala.Predef.
    Definition Classes
      Ensuring
42.  def ensuring(cond: Boolean): SymbolLoader
    Implicit
      This member is added by an implicit conversion from SymbolLoader toEnsuring[SymbolLoader] 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: (symbolTable)#Type
    Definition Classes
      TypeApiImpl → TypeApi
46.  def etaExpand: (symbolTable)#Type
    Definition Classes
      Type → TypeApi
47.  def exists(p: ((symbolTable)#Type) => Boolean): Boolean
    Definition Classes
      Type → TypeApi
48.  def filterAnnotations(p: ((symbolTable)#AnnotationInfo) => Boolean): (symbolTable)#Type
    Definition Classes
      Type → Annotatable
49.  final def finalResultType: (symbolTable)#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: ((symbolTable)#Type) => Boolean): Option[(symbolTable)#Type]
    Definition Classes
      Type → TypeApi
52.  def findMember(name: (symbolTable)#Name, excludedFlags: Long, requiredFlags: Long, stableOnly: Boolean): (symbolTable)#Symbol
    Definition Classes
      Type
53.  def findMembers(excludedFlags: Long, requiredFlags: Long): (symbolTable)#Scope
    Definition Classes
      Type
54.  def firstParent: (symbolTable)#Type
    Definition Classes
      Type
55.  def foldOver(folder: (symbolTable)#TypeFolder): Unit
    Definition Classes
      Type
56.  def forceDirectSuperclasses(): Unit
    Definition Classes
      Type
57.  def foreach(f: ((symbolTable)#Type) => Unit): Unit
    Definition Classes
      Type → TypeApi
58.  def fromSource: Boolean
    Definition Classes
      SymLoader
59.  def getAnnotation(cls: (symbolTable)#Symbol): Option[(symbolTable)#AnnotationInfo]
    Definition Classes
      Annotatable
60.  final def getClass(): Class[_ <: AnyRef]
    Definition Classes
      AnyRef → Any
    Annotations
      @native()
61.  def hasAnnotation(cls: (symbolTable)#Symbol): Boolean
    Definition Classes
      Annotatable
62.  def hasNonPrivateMember(name: (symbolTable)#Name): Boolean
    Definition Classes
      Type
63.  def hashCode(): Int
    Definition Classes
      AnyRef → Any
    Annotations
      @native()
64.  def implicitMembers: (symbolTable)#Scope
    Definition Classes
      Type
65.  def instantiateTypeParams(formals: List[(symbolTable)#Symbol], actuals: List[(symbolTable)#Type]): (symbolTable)#Type
    Definition Classes
      Type
66.  final def isAny: Boolean
    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 isJavaVarargsMethod: Boolean
    Definition Classes
      LazyType
77.  final def isNothing: Boolean
    Definition Classes
      Type
78.  def isShowAsInfixType: Boolean
    Definition Classes
      Type
79.  def isSpliceable: Boolean
    Definition Classes
      TypeApiImpl
80.  final def isStable: Boolean
    Definition Classes
      Type
81.  def isStructuralRefinement: Boolean
    Definition Classes
      Type
82.  def isTrivial: Boolean
    Definition Classes
      Type
83.  final def isVolatile: Boolean
    Definition Classes
      Type
84.  def isWildcard: Boolean
    Definition Classes
      Type
85.  def javaThrownExceptions: List[(symbolTable)#Symbol]
    Definition Classes
      LazyType
86.  def kind: String
    Definition Classes
      LazyType → Type
87.  def load(root: (symbolTable)#Symbol): Unit
    Definition Classes
      SymbolLoader → Type
88.  def looselyMatches(that: (symbolTable)#Type): Boolean
    Definition Classes
      Type
89.  def lowerBound: (symbolTable)#Type
    Definition Classes
      Type
90.  def map(f: ((symbolTable)#Type) => (symbolTable)#Type): (symbolTable)#Type
    Definition Classes
      Type → TypeApi
91.  def mapOver(map: (symbolTable)#TypeMap): (symbolTable)#Type
    Definition Classes
      Type
92.  def matches(that: (symbolTable)#Type): Boolean
    Definition Classes
      Type
93.  def matchesPattern(that: (symbolTable)#Type): Boolean
    Definition Classes
      Type
94.  def member(name: (symbolTable)#Name): (symbolTable)#Symbol
    Definition Classes
      Type → TypeApi
95.  def memberBasedOnName(name: (symbolTable)#Name, excludedFlags: Long): (symbolTable)#Symbol
    Definition Classes
      Type
96.  def memberInfo(sym: (symbolTable)#Symbol): (symbolTable)#Type
    Definition Classes
      Type
97.  def memberType(sym: (symbolTable)#Symbol): (symbolTable)#Type
    Definition Classes
      Type
98.  def members: (symbolTable)#Scope
    Definition Classes
      Type → TypeApi
99.  def membersBasedOnFlags(excludedFlags: Long, requiredFlags: Long): (symbolTable)#Scope
    Definition Classes
      Type
100.  def nameAndArgsString: String
     Definition Classes
       Type
101.  def narrow: (symbolTable)#Type
     Definition Classes
       Type
102.  final def ne(arg0: AnyRef): Boolean
     Definition Classes
       AnyRef
103.  def nonLocalMember(name: (symbolTable)#Name): (symbolTable)#Symbol
     Definition Classes
       Type
104.  def nonPrivateDecl(name: (symbolTable)#Name): (symbolTable)#Symbol
     Definition Classes
       Type
105.  def nonPrivateDecls: List[(symbolTable)#Symbol]
     Definition Classes
       Type
106.  def nonPrivateMember(name: (symbolTable)#Name): (symbolTable)#Symbol
     Definition Classes
       Type
107.  def nonPrivateMemberAdmitting(name: (symbolTable)#Name, admit: Long): (symbolTable)#Symbol
     Definition Classes
       Type
108.  def nonPrivateMembers: (symbolTable)#Scope
     Definition Classes
       Type
109.  def nonPrivateMembersAdmitting(admit: Long): (symbolTable)#Scope
     Definition Classes
       Type
110.  def normalize: (symbolTable)#Type
     Definition Classes
       Type → TypeApi
111.  final def notify(): Unit
     Definition Classes
       AnyRef
     Annotations
       @native()
112.  final def notifyAll(): Unit
     Definition Classes
       AnyRef
     Annotations
       @native()
113.  def objectPrefix: String
     Attributes
       protected
     Definition Classes
       Type
114.  final def orElse(alt: => (symbolTable)#Type): (symbolTable)#Type
     Definition Classes
       Type → TypeApi
     Annotations
       @inline()
115.  def packageObject: (symbolTable)#Symbol
     Definition Classes
       Type
116.  def packagePrefix: String
     Attributes
       protected
     Definition Classes
       Type
117.  def paramLists: List[List[(symbolTable)#Symbol]]
     Definition Classes
       TypeApiImpl → TypeApi
118.  def paramSectionCount: Int
     Definition Classes
       Type
119.  def paramTypes: List[(symbolTable)#Type]
     Definition Classes
       Type
120.  def params: List[(symbolTable)#Symbol]
     Definition Classes
       Type
121.  def paramss: List[List[(symbolTable)#Symbol]]
     Definition Classes
       Type → TypeApi
122.  def parents: List[(symbolTable)#Type]
     Definition Classes
       Type
123.  def prefix: (symbolTable)#Type
     Definition Classes
       Type
124.  def prefixChain: List[(symbolTable)#Type]
     Definition Classes
       Type
125.  def prefixDirect: (symbolTable)#Type
     Definition Classes
       Type
126.  def prefixString: String
     Definition Classes
       Type
127.  def removeAnnotation(cls: (symbolTable)#Symbol): (symbolTable)#Type
     Definition Classes
       Annotatable
128.  def resultApprox: (symbolTable)#Type
     Definition Classes
       Type
129.  def resultType(actuals: List[(symbolTable)#Type]): (symbolTable)#Type
     Definition Classes
       Type
130.  def resultType: (symbolTable)#Type
     Definition Classes
       Type → TypeApi
131.  def safeToString: String
     Definition Classes
       LazyType → Type
132.  def setAnnotations(annots: List[(symbolTable)#AnnotationInfo]): (symbolTable)#Type
     Definition Classes
       Type → Annotatable
133.  def skolemizeExistential: (symbolTable)#Type
     Definition Classes
       Type
134.  def skolemizeExistential(owner: (symbolTable)#Symbol, origin: AnyRef): (symbolTable)#Type
     Definition Classes
       Type
135.  def skolemsExceptMethodTypeParams: List[(symbolTable)#Symbol]
     Definition Classes
       Type
136.  def sourcefile: Option[AbstractFile]
137.  def stat_<:<(that: (symbolTable)#Type): Boolean
     Definition Classes
       Type
138.  def staticAnnotations: collection.immutable.List[(symbolTable)#AnnotationInfo]
     Definition Classes
       Annotatable
139.  def subst(from: List[(symbolTable)#Symbol], to: List[(symbolTable)#Type]): (symbolTable)#Type
     Definition Classes
       Type
140.  def substSym(from: List[(symbolTable)#Symbol], to: List[(symbolTable)#Symbol]): (symbolTable)#Type
     Definition Classes
       Type
141.  def substThis(from: (symbolTable)#Symbol, to: (symbolTable)#Symbol): (symbolTable)#Type
     Definition Classes
       Type
142.  def substThis(from: (symbolTable)#Symbol, to: (symbolTable)#Type): (symbolTable)#Type
     Definition Classes
       Type
143.  def substThisAndSym(from: (symbolTable)#Symbol, to: (symbolTable)#Type, symsFrom: List[(symbolTable)#Symbol], symsTo: List[(symbolTable)#Symbol]): (symbolTable)#Type
     Definition Classes
       Type
144.  def substituteSymbols(from: List[(symbolTable)#Symbol], to: List[(symbolTable)#Symbol]): (symbolTable)#Type
     Definition Classes
       TypeApiImpl → TypeApi
145.  def substituteTypes(from: List[(symbolTable)#Symbol], to: List[(symbolTable)#Type]): (symbolTable)#Type
     Definition Classes
       TypeApiImpl → TypeApi
146.  final def synchronized[T0](arg0: => T0): T0
     Definition Classes
       AnyRef
147.  def takesTypeArgs: Boolean
     Definition Classes
       Type → TypeApi
148.  def termSymbol: (symbolTable)#Symbol
     Definition Classes
       Type → TypeApi
149.  def toLongString: String
     Definition Classes
       Type
150.  final def toString(): String
     Definition Classes
       Type → AnyRef → Any
151.  def trimPrefix(str: String): String
     Definition Classes
       Type
152.  def typeArgs: List[(symbolTable)#Type]
     Definition Classes
       Type → TypeApi
153.  def typeArguments: List[(symbolTable)#Type]
     Definition Classes
       TypeApiImpl
154.  def typeConstructor: (symbolTable)#Type
     Definition Classes
       Type → TypeApi
155.  def typeOfThis: (symbolTable)#Type
     Definition Classes
       Type
156.  def typeParams: List[(symbolTable)#Symbol]
     Definition Classes
       Type → TypeApi
157.  def typeSymbol: (symbolTable)#Symbol
     Definition Classes
       Type → TypeApi
158.  def typeSymbolDirect: (symbolTable)#Symbol
     Definition Classes
       Type
159.  def underlying: (symbolTable)#Type
     Definition Classes
       Type
160.  def upperBound: (symbolTable)#Type
     Definition Classes
       Type
161.  final def wait(): Unit
     Definition Classes
       AnyRef
     Annotations
       @throws(classOf[java.lang.InterruptedException])
162.  final def wait(arg0: Long, arg1: Int): Unit
     Definition Classes
       AnyRef
     Annotations
       @throws(classOf[java.lang.InterruptedException])
163.  final def wait(arg0: Long): Unit
     Definition Classes
       AnyRef
     Annotations
       @throws(classOf[java.lang.InterruptedException]) @native()
164.  def weak_<:<(that: (symbolTable)#Type): Boolean
     Definition Classes
       Type → TypeApi
165.  def widen: (symbolTable)#Type
     Definition Classes
       Type → TypeApi
166.  def withAnnotation(anno: (symbolTable)#AnnotationInfo): (symbolTable)#Type
     Definition Classes
       Type → Annotatable
167.  def withAnnotations(annots: List[(symbolTable)#AnnotationInfo]): (symbolTable)#Type
     Definition Classes
       Type → Annotatable
168.  def withFilter(p: ((symbolTable)#Type) => Boolean): FilterMapForeach
     Definition Classes
       Type
169.  def withoutAnnotations: (symbolTable)#Type
     Definition Classes
       Type → Annotatable

### Deprecated Value Members

1.  def formatted(fmtstr: String): String
   Implicit
     This member is added by an implicit conversion from SymbolLoader toStringFormat[SymbolLoader] performed by method StringFormat in scala.Predef.
   Definition Classes
     StringFormat
   Annotations
     @deprecated @inline()
   Deprecated

     (Since version 2.12.16) Use `formatString.format(value)` instead of `value.formatted(formatString)`, or use the `f""` string interpolator. In Java 15 and later, `formatted` resolves to the new method in String which has reversed parameters.

2.  def →[B](y: B): (SymbolLoader, B)
   Implicit
     This member is added by an implicit conversion from SymbolLoader toArrowAssoc[SymbolLoader] 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 (symbolTable)#SymLoader

### Inherited from (symbolTable)#LazyType

### Inherited from (symbolTable)#Type

### Inherited from (symbolTable)#Annotatable[(symbolTable)#Type]

### Inherited from (symbolTable)#TypeApiImpl

### Inherited from (symbolTable)#TypeApi

### Inherited from AnyRef

### Inherited from Any

### Inherited by implicit conversion any2stringadd fromSymbolLoader to any2stringadd[SymbolLoader]

### Inherited by implicit conversion StringFormat fromSymbolLoader to StringFormat[SymbolLoader]

### Inherited by implicit conversion Ensuring fromSymbolLoader to Ensuring[SymbolLoader]

### Inherited by implicit conversion ArrowAssoc fromSymbolLoader to ArrowAssoc[SymbolLoader]

### Ungrouped