Scala Compiler2.12.2-20170504-135222-21d12e9 < 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
-  package classfile
  Definition Classes
    symtab
- BrowsingLoaders
- SymbolLoaders
- SymbolLoadersStats
- SymbolTable
- SymbolTrackers

c

scala.tools.nsc.symtab

# SymbolLoaders 

###

#### abstract class SymbolLoaders extends AnyRef

This class ...

Source
  SymbolLoaders.scala
Version

  1.0

Linear Supertypes
AnyRef, Any
Known Subclasses
GlobalSymbolLoaders, BrowsingLoaders
Type Hierarchy
 
Ordering

1. Alphabetic
2. By Inheritance

Inherited

1. SymbolLoaders
2. AnyRef
3. 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 SymbolLoaders()

### Type Members

1.  class ClassfileLoader extends SymbolLoader with (symbolTable)#FlagAssigningCompleter
2.  class PackageLoader extends SymbolLoader with (symbolTable)#FlagAgnosticCompleter

   Loads contents of a package

3.  class SourcefileLoader extends SymbolLoader with (symbolTable)#FlagAssigningCompleter
4.  abstract class SymbolLoader extends (symbolTable)#SymLoader

   A lazy type that completes itself by calling parameter doComplete.

   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

### Abstract Value Members

1.  abstract def compileLate(srcfile: AbstractFile): Unit

   Should forward to `Run.compileLate`.

   Should forward to `Run.compileLate`. The more principled fix would be to determine why this functionality is needed and extract it into a separate interface.

   Attributes
     protected
2.  abstract def lookupMemberAtTyperPhaseIfPossible(sym: (symbolTable)#Symbol, name: (symbolTable)#Name): (symbolTable)#Symbol

   Required by ClassfileParser.

   Required by ClassfileParser. Check documentation in that class for details.

3.  abstract val platform: Platform { val symbolTable: scala.tools.nsc.symtab.SymbolLoaders.<refinement>.type }
4.  abstract val symbolTable: SymbolTable { def settings: scala.tools.nsc.Settings }

### 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 SymbolLoaders to any2stringadd[SymbolLoaders] performed by method any2stringadd in scala.Predef.
   Definition Classes
     any2stringadd
4.  def ->[B](y: B): (SymbolLoaders, B)
   Implicit
     This member is added by an implicit conversion from SymbolLoaders to ArrowAssoc[SymbolLoaders] performed by method ArrowAssoc in scala.Predef.
   Definition Classes
     ArrowAssoc
   Annotations
     @inline()
5.  final def ==(arg0: Any): Boolean
   Definition Classes
     AnyRef → Any
6.  final def asInstanceOf[T0]: T0
   Definition Classes
     Any
7.  def binaryOnly(owner: (symbolTable)#Symbol, name: String): Boolean

   The package objects of scala and scala.reflect should always be loaded in binary if classfiles are available, even if sourcefiles are newer.

   The package objects of scala and scala.reflect should always be loaded in binary if classfiles are available, even if sourcefiles are newer. Late-compiling these objects from source leads to compilation order issues. Note: We do a name-base comparison here because the method is called before we even have ReflectPackage defined.

8.  def clone(): AnyRef
   Attributes
     protected[java.lang]
   Definition Classes
     AnyRef
   Annotations
     @throws( ... )
9.  def ensuring(cond: (SymbolLoaders) ⇒ Boolean, msg: ⇒ Any): SymbolLoaders
   Implicit
     This member is added by an implicit conversion from SymbolLoaders to Ensuring[SymbolLoaders] performed by method Ensuring in scala.Predef.
   Definition Classes
     Ensuring
10.  def ensuring(cond: (SymbolLoaders) ⇒ Boolean): SymbolLoaders
    Implicit
      This member is added by an implicit conversion from SymbolLoaders to Ensuring[SymbolLoaders] performed by method Ensuring in scala.Predef.
    Definition Classes
      Ensuring
11.  def ensuring(cond: Boolean, msg: ⇒ Any): SymbolLoaders
    Implicit
      This member is added by an implicit conversion from SymbolLoaders to Ensuring[SymbolLoaders] performed by method Ensuring in scala.Predef.
    Definition Classes
      Ensuring
12.  def ensuring(cond: Boolean): SymbolLoaders
    Implicit
      This member is added by an implicit conversion from SymbolLoaders to Ensuring[SymbolLoaders] performed by method Ensuring in scala.Predef.
    Definition Classes
      Ensuring
13.  def enterClass(owner: (symbolTable)#Symbol, clazz: (symbolTable)#ClassSymbol, completer: SymbolLoader): (symbolTable)#Symbol
14.  def enterClass(owner: (symbolTable)#Symbol, name: String, completer: SymbolLoader): (symbolTable)#Symbol

    Enter class with given `name` into scope of `root` and give them `completer` as type.

15.  def enterClassAndModule(root: (symbolTable)#Symbol, name: String, getCompleter: ((symbolTable)#ClassSymbol, (symbolTable)#ModuleSymbol) ⇒ SymbolLoader): Unit

    Enter class and module with given `name` into scope of `root` and give them `completer` as type.

16.  def enterIfNew(owner: (symbolTable)#Symbol, member: (symbolTable)#Symbol, completer: SymbolLoader): (symbolTable)#Symbol
    Attributes
      protected
17.  def enterModule(owner: (symbolTable)#Symbol, module: (symbolTable)#ModuleSymbol, completer: SymbolLoader): (symbolTable)#Symbol
18.  def enterModule(owner: (symbolTable)#Symbol, name: String, completer: SymbolLoader): (symbolTable)#Symbol

    Enter module with given `name` into scope of `root` and give them `completer` as type.

19.  def enterPackage(root: (symbolTable)#Symbol, name: String, completer: SymbolLoader): (symbolTable)#Symbol

    Enter package with given `name` into scope of `root` and give them `completer` as type.

20.  def enterToplevelsFromSource(root: (symbolTable)#Symbol, name: String, src: AbstractFile): Unit

    In batch mode: Enter class and module with given `name` into scope of `root` and give them a source completer for given `src` as type.

    In batch mode: Enter class and module with given `name` into scope of `root` and give them a source completer for given `src` as type. In IDE mode: Find all toplevel definitions in `src` and enter then into scope of `root` with source completer for given `src` as type. (overridden in interactive.Global).

21.  final def eq(arg0: AnyRef): Boolean
    Definition Classes
      AnyRef
22.  def equals(arg0: Any): Boolean
    Definition Classes
      AnyRef → Any
23.  def finalize(): Unit
    Attributes
      protected[java.lang]
    Definition Classes
      AnyRef
    Annotations
      @throws( classOf[java.lang.Throwable] )
24.  def formatted(fmtstr: String): String
    Implicit
      This member is added by an implicit conversion from SymbolLoaders to StringFormat[SymbolLoaders] performed by method StringFormat in scala.Predef.
    Definition Classes
      StringFormat
    Annotations
      @inline()
25.  final def getClass(): Class[_]
    Definition Classes
      AnyRef → Any
26.  def hashCode(): Int
    Definition Classes
      AnyRef → Any
27.  def initializeFromClassPath(owner: (symbolTable)#Symbol, classRep: ClassRepresentation): Unit

    Initialize toplevel class and module symbols in `owner` from class path representation `classRep`

28.  final def isInstanceOf[T0]: Boolean
    Definition Classes
      Any
29.  final def ne(arg0: AnyRef): Boolean
    Definition Classes
      AnyRef
30.  def newClass(owner: (symbolTable)#Symbol, name: String): (symbolTable)#ClassSymbol
31.  def newModule(owner: (symbolTable)#Symbol, name: String): (symbolTable)#ModuleSymbol
32.  final def notify(): Unit
    Definition Classes
      AnyRef
33.  final def notifyAll(): Unit
    Definition Classes
      AnyRef
34.  var parentsLevel: Int

    used from classfile parser to avoid cycles

35.  var pendingLoadActions: List[() ⇒ Unit]
36.  def signalError(root: (symbolTable)#Symbol, ex: Throwable): Unit
    Attributes
      protected
37.  final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
      AnyRef
38.  def toString(): String
    Definition Classes
      AnyRef → Any
39.  final def wait(): Unit
    Definition Classes
      AnyRef
    Annotations
      @throws( ... )
40.  final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
      AnyRef
    Annotations
      @throws( ... )
41.  final def wait(arg0: Long): Unit
    Definition Classes
      AnyRef
    Annotations
      @throws( ... )
42.  def →[B](y: B): (SymbolLoaders, B)
    Implicit
      This member is added by an implicit conversion from SymbolLoaders to ArrowAssoc[SymbolLoaders] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
      ArrowAssoc
43.  object moduleClassLoader extends SymbolLoader with (symbolTable)#FlagAssigningCompleter

### Inherited from AnyRef

### Inherited from Any

### Inherited by implicit conversion any2stringadd from SymbolLoaders to any2stringadd[SymbolLoaders]

### Inherited by implicit conversion StringFormat from SymbolLoaders to StringFormat[SymbolLoaders]

### Inherited by implicit conversion Ensuring from SymbolLoaders to Ensuring[SymbolLoaders]

### Inherited by implicit conversion ArrowAssoc from SymbolLoaders to ArrowAssoc[SymbolLoaders]

### Ungrouped