abstract class RootsBase extends api.Mirror[Mirrors.this.type]

Self Type
SymbolTable.RootsBase
Linear Supertypes
api.Mirror[Mirrors.this.type], AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. RootsBase
  2. Mirror
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new RootsBase(rootOwner: SymbolTable.Symbol)

Abstract Value Members

  1. abstract val EmptyPackage: SymbolTable.ModuleSymbol

    The module symbol of the default (unnamed) package

    The module symbol of the default (unnamed) package

    Definition Classes
    RootsBaseMirror
  2. abstract val EmptyPackageClass: SymbolTable.ClassSymbol

    The module class symbol of the default (unnamed) package

    The module class symbol of the default (unnamed) package

    Definition Classes
    RootsBaseMirror
  3. abstract val RootClass: SymbolTable.ClassSymbol

    The class symbol of the _root_ package

    The class symbol of the _root_ package

    Definition Classes
    RootsBaseMirror
  4. abstract val RootPackage: SymbolTable.ModuleSymbol

    The module symbol of the _root_ package

    The module symbol of the _root_ package

    Definition Classes
    RootsBaseMirror
  5. abstract def rootLoader: SymbolTable.LazyType
    Attributes
    protected[scala]
  6. abstract val universe: Mirrors.this.type

    The universe this mirror belongs to.

    The universe this mirror belongs to.

    Definition Classes
    Mirror

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  6. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  7. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  8. def erasureName[T](implicit arg0: ClassTag[T]): String

    ********************** helpers ***********************

  9. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  10. def findMemberFromRoot(fullName: SymbolTable.Name): SymbolTable.Symbol
  11. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  12. def getClassByName(fullname: String): SymbolTable.ClassSymbol
  13. def getClassIfDefined(fullname: String, toName: (String) ⇒ SymbolTable.Name): SymbolTable.Symbol
  14. def getClassIfDefined(fullname: String): SymbolTable.Symbol
  15. def getModuleByName(fullname: String): SymbolTable.ModuleSymbol
  16. def getModuleIfDefined(fullname: String): SymbolTable.Symbol
  17. def getPackage(fullname: String): SymbolTable.ModuleSymbol
  18. def getPackageIfDefined(fullname: SymbolTable.TermName): SymbolTable.Symbol
  19. def getPackageObject(fullname: SymbolTable.TermName): SymbolTable.ModuleSymbol
  20. def getPackageObject(fullname: String): SymbolTable.ModuleSymbol
  21. def getPackageObjectIfDefined(fullname: SymbolTable.TermName): SymbolTable.Symbol
  22. def getPackageObjectIfDefined(fullname: String): SymbolTable.Symbol
  23. def getRequiredClass(fullname: String): SymbolTable.ClassSymbol
  24. def getRequiredClass(fullname: String, toName: (String) ⇒ SymbolTable.Name): SymbolTable.ClassSymbol
  25. def getRequiredModule(fullname: String): SymbolTable.ModuleSymbol
  26. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  27. def init(): Unit
  28. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  29. def isMirrorInitialized: Boolean
  30. def mirrorMissingHook(owner: SymbolTable.Symbol, name: SymbolTable.Name): SymbolTable.Symbol
    Attributes
    protected
  31. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  32. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  33. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  34. def requiredClass[T](implicit arg0: ClassTag[T]): SymbolTable.ClassSymbol
  35. def requiredModule[T](implicit arg0: ClassTag[T]): SymbolTable.ModuleSymbol
  36. def staticClass(fullname: String): SymbolTable.ClassSymbol

    The symbol corresponding to the globally accessible class with the given fully qualified name fullName.

    The symbol corresponding to the globally accessible class with the given fully qualified name fullName.

    If the name points to a type alias, it's recursively dealiased and its target is returned. If you need a symbol that corresponds to the type alias itself, load it directly from the package class:

    scala> cm.staticClass("scala.List") res0: scala.reflect.runtime.universe.ClassSymbol = class List

    scala> res0.fullName res1: String = scala.collection.immutable.List

    scala> cm.staticPackage("scala") res2: scala.reflect.runtime.universe.ModuleSymbol = package scala

    scala> res2.moduleClass.info member TypeName("List") res3: scala.reflect.runtime.universe.Symbol = type List

    scala> res3.fullName res4: String = scala.List

    To be consistent with Scala name resolution rules, in case of ambiguity between a package and an object, the object is never been considered.

    For example for the following code:

    package foo { class B }

    object foo { class A class B }

    staticClass("foo.B") will resolve to the symbol corresponding to the class B declared in the package foo, and staticClass("foo.A") will throw a ScalaReflectionException.

    In the example above, to load a symbol that corresponds to the class B declared in the object foo, use staticModule("foo") to load the module symbol and then navigate info.members of its moduleClass.

    Unlike getClassByName/getRequiredClass this function can also load packageless symbols. Compiler might ignore them, but they should be loadable with macros.

    Definition Classes
    RootsBaseMirror
  37. def staticModule(fullname: String): SymbolTable.ModuleSymbol

    The symbol corresponding to the globally accessible object with the given fully qualified name fullName.

    The symbol corresponding to the globally accessible object with the given fully qualified name fullName.

    To be consistent with Scala name resolution rules, in case of ambiguity between a package and an object, the object is never been considered.

    For example for the following code:

    package foo { object B }

    object foo { object A object B }

    staticModule("foo.B") will resolve to the symbol corresponding to the object B declared in the package foo, and staticModule("foo.A") will throw a ScalaReflectionException

    In the example above, to load a symbol that corresponds to the object B declared in the object foo, use staticModule("foo") to load the module symbol and then navigate info.members of its moduleClass.

    Unlike getModule/getRequiredModule this function can also load packageless symbols. Compiler might ignore them, but they should be loadable with macros.

    Definition Classes
    RootsBaseMirror
  38. def staticPackage(fullname: String): SymbolTable.ModuleSymbol

    The symbol corresponding to a package with the given fully qualified name fullName.

    The symbol corresponding to a package with the given fully qualified name fullName.

    Definition Classes
    RootsBaseMirror
  39. def symbolOf[T](implicit arg0: SymbolTable.WeakTypeTag[T]): SymbolTable.TypeSymbol

    Type symbol of x as derived from a type tag.

    Type symbol of x as derived from a type tag.

    Definition Classes
    RootsBaseMirror
  40. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  41. def toString(): String
    Definition Classes
    AnyRef → Any
  42. def typeOf[T](implicit arg0: SymbolTable.TypeTag[T]): SymbolTable.Type

    Shortcut for implicitly[TypeTag[T]].tpe

    Shortcut for implicitly[TypeTag[T]].tpe

    Definition Classes
    Mirror
  43. def universeMissingHook(owner: SymbolTable.Symbol, name: SymbolTable.Name): SymbolTable.Symbol
    Attributes
    protected
  44. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  45. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  46. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  47. def weakTypeOf[T](implicit arg0: SymbolTable.WeakTypeTag[T]): SymbolTable.Type

    Shortcut for implicitly[WeakTypeTag[T]].tpe

    Shortcut for implicitly[WeakTypeTag[T]].tpe

    Definition Classes
    Mirror
  48. final def wrapMissing(body: ⇒ SymbolTable.Symbol): SymbolTable.Symbol
    Annotations
    @inline()

Deprecated Value Members

  1. def getClassByName(fullname: SymbolTable.Name): SymbolTable.ClassSymbol
    Annotations
    @deprecated
    Deprecated

    (Since version 2.13.0) Use overload that accepts a String.

  2. def getClassIfDefined(fullname: SymbolTable.Name): SymbolTable.Symbol
    Annotations
    @deprecated
    Deprecated

    (Since version 2.13.0) Use overload that accepts a String.

  3. def getModuleByName(fullname: SymbolTable.Name): SymbolTable.ModuleSymbol
    Annotations
    @deprecated
    Deprecated

    (Since version 2.13.0) Use overload that accepts a String.

  4. def getModuleIfDefined(fullname: SymbolTable.Name): SymbolTable.Symbol
    Annotations
    @deprecated
    Deprecated

    (Since version 2.13.0) Use overload that accepts a String.

  5. def getPackage(fullname: SymbolTable.TermName): SymbolTable.ModuleSymbol
    Annotations
    @deprecated
    Deprecated

    (Since version 2.13.0) Use overload that accepts a String.

  6. def getRequiredPackage(fullname: String): SymbolTable.ModuleSymbol
    Annotations
    @deprecated
    Deprecated

    (Since version 2.11.0) use getPackage

Inherited from api.Mirror[Mirrors.this.type]

Inherited from AnyRef

Inherited from Any

Mirror

TypeTags

Ungrouped