ExtractDependencies

class ExtractDependencies extends Phase

This phase sends information on classes' dependencies to sbt via callbacks.

This is used by sbt for incremental recompilation. Briefly, when a file changes sbt will recompile it, if its API has changed (determined by what ExtractAPI sent) then sbt will determine which reverse-dependencies (determined by what ExtractDependencies sent) of the API have to be recompiled depending on what changed.

See the documentation of ExtractDependenciesCollector, ExtractAPI, ExtractAPICollector and http://www.scala-sbt.org/0.13/docs/Understanding-Recompilation.html for more information on how sbt incremental compilation works.

The following flags affect this phase: -Yforce-sbt-phases -Ydump-sbt-inc

See also

ExtractAPI

Companion
object
class Phase
class Object
trait Matchable
class Any

Value members

Concrete methods

override def isCheckable: Boolean
Definition Classes
override def isRunnable(using Context): Boolean
Definition Classes
override def phaseName: String
Definition Classes
override def run(using Context): Unit
Definition Classes

Inherited methods

final def <=(that: Phase): Boolean
Inherited from
Phase

If set, implicit search is enabled

If set, implicit search is enabled

Inherited from
Phase

Can this transform change the base types of a type?

Can this transform change the base types of a type?

Inherited from
Phase

Can this transform create or delete non-private members?

Can this transform create or delete non-private members?

Inherited from
Phase

Can this transform change the parents of a class?

Can this transform change the parents of a class?

Inherited from
Phase
def checkPostCondition(tree: Tree)(using Context): Unit

Check what the phase achieves, to be called at any point after it is finished.

Check what the phase achieves, to be called at any point after it is finished.

Inherited from
Phase
Inherited from
Phase
def end: PhaseId
Inherited from
Phase
final def erasedTypes: Boolean
Inherited from
Phase
Inherited from
Phase
final def flatClasses: Boolean
Inherited from
Phase
final def hasNext: Boolean
Inherited from
Phase
def id: Int

The sequence position of this phase in the given context where 0 is reserved for NoPhase and the first real phase is at position 1. -1 if the phase is not installed in the context.

The sequence position of this phase in the given context where 0 is reserved for NoPhase and the first real phase is at position 1. -1 if the phase is not installed in the context.

Inherited from
Phase
Inherited from
Phase
Inherited from
Phase

Is this phase the standard typerphase? True for FrontEnd, but not for other first phases (such as FromTasty). The predicate is tested in some places that perform checks and corrections. It's different from ctx.isAfterTyper (and cheaper to test).

Is this phase the standard typerphase? True for FrontEnd, but not for other first phases (such as FromTasty). The predicate is tested in some places that perform checks and corrections. It's different from ctx.isAfterTyper (and cheaper to test).

Inherited from
Phase
final def iterator: Iterator[Phase]
Inherited from
Phase
Inherited from
Phase
final def next: Phase
Inherited from
Phase
Inherited from
Phase
Inherited from
Phase
final def prev: Phase
Inherited from
Phase
final def refChecked: Boolean
Inherited from
Phase

If set, allow missing or superfluous arguments in applications and type applications.

If set, allow missing or superfluous arguments in applications and type applications.

Inherited from
Phase
Inherited from
Phase

List of names of phases that should precede this phase

List of names of phases that should precede this phase

Inherited from
Phase
Inherited from
Phase
Inherited from
Phase
Inherited from
Phase
def start: Int
Inherited from
Phase
override def toString: String
Definition Classes
Phase -> Any
Inherited from
Phase