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.
- Alphabetic
- By Inheritance
- Dependency
- GlobalHelpers
- LocateClassFile
- ClassName
- Compat
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
- new Dependency(global: CallbackGlobal)
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
classFile(sym: CallbackGlobal.Symbol): Option[(AbstractFile, String)]
- Attributes
- protected
- Definition Classes
- LocateClassFile
-
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
-
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 symbolin
.Create a (source) name for the class symbol
s
with a prefix determined by the class symbolin
.If
s
represents a package objectpkg3
, then the returned name will bepkg1.pkg2.pkg3.package
. Ifs
represents a classFoo
nested in package objectpkg3
then the returned name ispkg1.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 useunexpandedName
.- Attributes
- protected
- Definition Classes
- ClassName
-
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
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
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
-
def
constructorNameAsString(cls: CallbackGlobal.Symbol): String
- Attributes
- protected
- Definition Classes
- ClassName
-
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
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
fileForClass(outputDirectory: File, s: CallbackGlobal.Symbol, separatorRequired: Boolean): File
- Attributes
- protected
- Definition Classes
- LocateClassFile
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
def
flatclassName(s: CallbackGlobal.Symbol, sep: Char, dollarRequired: Boolean): String
- Attributes
- protected
- Definition Classes
- ClassName
-
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
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
val
global: CallbackGlobal
- Definition Classes
- Dependency → GlobalHelpers → LocateClassFile → ClassName
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
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()
-
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()
-
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
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
isTopLevelModule(sym: CallbackGlobal.Symbol): Boolean
- Attributes
- protected
- Definition Classes
- ClassName
-
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
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def newPhase(prev: Phase): Phase
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
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
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
object
Feedback
Define common error messages for error reporting and assertions.
Define common error messages for error reporting and assertions.
- Definition Classes
- GlobalHelpers
-
object
MacroExpansionOf
- Definition Classes
- GlobalHelpers