AbstractExtractDependenciesCollector

dotty.tools.dotc.sbt.AbstractExtractDependenciesCollector

Extract the dependency information of a compilation unit.

To understand why we track the used names see the section "Name hashing algorithm" in http://www.scala-sbt.org/0.13/docs/Understanding-Recompilation.html To understand why we need to track dependencies introduced by inheritance specially, see the subsection "Dependencies introduced by member reference and inheritance" in the "Name hashing algorithm" section.

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Self type

Members list

Value members

Concrete methods

def addPatMatDependency(tpe: Type)(using Context): Unit
def addTypeDependency(tpe: Type)(using Context): Unit
protected def recordTree(tree: Tree)(using Context): Unit

Inherited methods

def apply(x: Unit, tree: Instance.this.Tree)(using Context): Unit

Attributes

Inherited from:
TreeTraverser
def apply(x: Unit, trees: List[Instance.this.Tree])(using Context): Unit

Attributes

Inherited from:
TreeAccumulator
def foldMoreCases(x: Unit, tree: Instance.this.Tree)(using Context): Unit

Attributes

Inherited from:
TreeAccumulator
def foldOver(x: Unit, tree: Instance.this.Tree)(using Context): Unit

Attributes

Inherited from:
TreeAccumulator
def traverse(trees: List[Instance.this.Tree])(using Context): Unit

Attributes

Inherited from:
TreeTraverser
protected def traverseChildren(tree: Instance.this.Tree)(using Context): Unit

Attributes

Inherited from:
TreeTraverser

Inherited and Abstract methods

def traverse(tree: Instance.this.Tree)(using Context): Unit

Attributes

Inherited from:
TreeTraverser