final class Dependency extends LocateClassFile with GlobalHelpers

Extracts dependency information from each compilation unit.

This phase detects all the dependencies both at the term and type level.

When dependency symbol is processed, it is mapped back to either source file where it's defined in (if it's available in current compilation run) or classpath entry where it originates from. The Symbol -> Classfile mapping is implemented by LocateClassFile that we inherit from.

Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Dependency
  2. GlobalHelpers
  3. LocateClassFile
  4. ClassName
  5. Compat
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new Dependency(global: CallbackGlobal)

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 classFile(sym: CallbackGlobal.Symbol): Option[(AbstractFile, String)]
    Attributes
    protected
    Definition Classes
    LocateClassFile
  6. def className(s: CallbackGlobal.Symbol): CallbackGlobal.Name

    Create a (source) name for a class symbol s.

    Create a (source) name for a class symbol s.

    Attributes
    protected
    Definition Classes
    ClassName
  7. def classNameAsSeenIn(in: CallbackGlobal.Symbol, s: CallbackGlobal.Symbol): String

    Create a (source) name for the class symbol s with a prefix determined by the class symbol in.

    Create a (source) name for the class symbol s with a prefix determined by the class symbol in.

    If s represents a package object pkg3, then the returned name will be pkg1.pkg2.pkg3.package. If s represents a class Foo nested in package object pkg3 then the returned name is pkg1.pkg2.pk3.Foo.

    Note that some objects with special access rights are encoded in names (like qualified privates private[qualifier]). In order to get the right original names, we need to use unexpandedName.

    Attributes
    protected
    Definition Classes
    ClassName
  8. def classNameAsString(s: CallbackGlobal.Symbol): String

    Create a String (source) name for a class symbol s.

    Create a String (source) name for a class symbol s.

    Attributes
    protected
    Definition Classes
    ClassName
  9. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )
  10. def constructorName(cls: CallbackGlobal.Symbol): CallbackGlobal.Name

    Given a class symbol cls, construct a name representing this constructor.

    Given a class symbol cls, construct a name representing this constructor. For a class:

    a.b.Foo

    this is:

    a;b;Foo;init;

    The prefix is important to avoid name hashing all constructors together (see #97), the weird format is necessary to avoid scalac or zinc trying to interpret this name (in particular we should not use '.' and we should not use '<init>'), we use ';' because it is one of the few characters that cannot appear in a valid JVM name.

    Attributes
    protected
    Definition Classes
    ClassName
  11. def constructorNameAsString(cls: CallbackGlobal.Symbol): String
    Attributes
    protected
    Definition Classes
    ClassName
  12. def enclOrModuleClass(s: CallbackGlobal.Symbol): CallbackGlobal.Symbol

    Return the enclosing class or the module class if it's a module.

    Return the enclosing class or the module class if it's a module.

    Definition Classes
    GlobalHelpers
  13. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  14. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  15. def fileForClass(outputDirectory: File, s: CallbackGlobal.Symbol, separatorRequired: Boolean): File
    Attributes
    protected
    Definition Classes
    LocateClassFile
  16. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  17. def flatclassName(s: CallbackGlobal.Symbol, sep: Char, dollarRequired: Boolean): String
    Attributes
    protected
    Definition Classes
    ClassName
  18. def flatname(s: CallbackGlobal.Symbol, separator: Char): String

    Creates a flat (binary) name for a class symbol s.

    Creates a flat (binary) name for a class symbol s.

    Attributes
    protected
    Definition Classes
    ClassName
  19. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  20. val global: CallbackGlobal
    Definition Classes
    DependencyGlobalHelpersLocateClassFileClassName
  21. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  22. def ignoredSymbol(symbol: CallbackGlobal.Symbol): Boolean

    Return true if symbol shall be ignored, false otherwise.

    Return true if symbol shall be ignored, false otherwise.

    Definition Classes
    GlobalHelpers
    Annotations
    @inline()
  23. def ignoredType(tpe: CallbackGlobal.Type): Boolean

    Return true if type shall be ignored, false otherwise.

    Return true if type shall be ignored, false otherwise.

    Definition Classes
    GlobalHelpers
    Annotations
    @inline()
  24. def isEmptyName(name: CallbackGlobal.Name): Boolean

    Return true if name is empty, false otherwise.

    Return true if name is empty, false otherwise.

    Definition Classes
    GlobalHelpers
  25. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  26. def isTopLevelModule(sym: CallbackGlobal.Symbol): Boolean
    Attributes
    protected
    Definition Classes
    ClassName
  27. def mangledName(s: CallbackGlobal.Symbol): CallbackGlobal.Name

    Mangle a JVM symbol name in a format better suited for internal uses by sbt.

    Mangle a JVM symbol name in a format better suited for internal uses by sbt.

    Attributes
    protected
    Definition Classes
    ClassName
  28. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  29. def newPhase(prev: Phase): Phase
  30. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  31. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  32. def processMacroExpansion(in: CallbackGlobal.Tree)(func: (CallbackGlobal.Tree) ⇒ Unit): Boolean

    Returns true if given tree contains macro attchment.

    Returns true if given tree contains macro attchment. In such case calls func on tree from attachment.

    Definition Classes
    GlobalHelpers
  33. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  34. def toString(): String
    Definition Classes
    AnyRef → Any
  35. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  36. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  37. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )
  38. object Feedback

    Define common error messages for error reporting and assertions.

    Define common error messages for error reporting and assertions.

    Definition Classes
    GlobalHelpers
  39. object MacroExpansionOf
    Definition Classes
    GlobalHelpers

Inherited from GlobalHelpers

Inherited from LocateClassFile

Inherited from ClassName

Inherited from Compat

Inherited from AnyRef

Inherited from Any

Ungrouped