Packages

final class BuildTargets extends AnyRef

In-memory cache for looking up build server metadata.

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. BuildTargets
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new BuildTargets(ammoniteBuildServer: (BuildTargetIdentifier) ⇒ Option[BuildServerConnection])

Type Members

  1. case class InferredBuildTarget(jar: io.AbsolutePath, symbol: String, id: BuildTargetIdentifier) extends Product with Serializable

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. def addDependencySource(sourcesJar: io.AbsolutePath, target: BuildTargetIdentifier): Unit
  5. def addScalacOptions(result: ScalacOptionsResult): Unit
  6. def addSourceItem(sourceItem: io.AbsolutePath, buildTarget: BuildTargetIdentifier): Unit
  7. def addSourceRoot(root: io.AbsolutePath): Unit
  8. def addWorkspaceBuildTargets(result: WorkspaceBuildTargetsResult): Unit
  9. def all: Iterator[ScalaTarget]
  10. def allBuildTargetIds: Seq[BuildTargetIdentifier]
  11. def allInverseDependencies(target: BuildTargetIdentifier): Set[BuildTargetIdentifier]
  12. def allWorkspaceJars: Iterator[io.AbsolutePath]
  13. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  14. def buildServerOf(id: BuildTargetIdentifier): Option[BuildServerConnection]
  15. def buildTargetSources(id: BuildTargetIdentifier): Iterable[io.AbsolutePath]
  16. def buildTargetTransitiveDependencies(id: BuildTargetIdentifier): Iterable[BuildTargetIdentifier]
  17. def buildTargetTransitiveSources(id: BuildTargetIdentifier): Iterator[io.AbsolutePath]
  18. val buildTargetsOrder: (BuildTargetIdentifier) ⇒ Int
  19. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  20. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  21. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  22. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  23. def findByDisplayName(name: String): Option[BuildTarget]
  24. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  25. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  26. def inferBuildTarget(toplevels: Iterable[mtags.Symbol]): Option[InferredBuildTarget]
  27. def inferBuildTarget(source: io.AbsolutePath): Option[BuildTargetIdentifier]

    Tries to guess what build target this readonly file belongs to from the symbols it defines.

    Tries to guess what build target this readonly file belongs to from the symbols it defines.

    By default, we rely on carefully recording what build target produced what files in the .metals/readonly/ directory. This approach has the problem that navigation failed to work in readonly/ sources if

    - a new metals feature forgot to record the build target - a user removes .metals/metals.h2.db

    When encountering an unknown readonly/ file we do the following steps to infer what build target it belongs to:

    - extract toplevel symbol definitions from the source code. - find a jar file from any classfile that defines one of the toplevel symbols. - find the build target which has that jar file in it's classpath.

    Otherwise if it's a jar file we find a build target it belongs to.

    This approach is not glamorous but it seems to work reasonably well.

  28. def info(buildTarget: BuildTargetIdentifier): Option[BuildTarget]
  29. def inverseDependencyLeaves(target: BuildTargetIdentifier): Set[BuildTargetIdentifier]
  30. def inverseDependencySource(sourceJar: io.AbsolutePath): Option[BuildTargetIdentifier]
  31. def inverseSourceItem(source: io.AbsolutePath): Option[io.AbsolutePath]
  32. def inverseSources(source: io.AbsolutePath): Option[BuildTargetIdentifier]

    Returns the first build target containing this source file.

  33. def isInsideSourceRoot(path: io.AbsolutePath): Boolean
  34. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  35. def isInverseDependency(query: BuildTargetIdentifier, roots: List[BuildTargetIdentifier]): Boolean
  36. def linkSourceFile(id: BuildTargetIdentifier, source: io.AbsolutePath): Unit
  37. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  38. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  39. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  40. def onCreate(source: io.AbsolutePath): Unit
  41. def originalInverseSourceItem(source: io.AbsolutePath): Option[io.AbsolutePath]
  42. def reset(): Unit
  43. def resetConnections(idToConn: List[(BuildTargetIdentifier, BuildServerConnection)]): Unit
  44. def sbtAutoImports(path: io.AbsolutePath): Option[Seq[String]]

    Resolves sbt auto imports if a file belongs to a Sbt build target.

  45. def scalaInfo(buildTarget: BuildTargetIdentifier): Option[ScalaBuildTarget]
  46. def scalaTarget(id: BuildTargetIdentifier): Option[ScalaTarget]
  47. def scalacOptions(buildTarget: BuildTargetIdentifier): Option[ScalacOptionsItem]
  48. def scalacOptions: Iterable[ScalacOptionsItem]
  49. def setTables(newTables: Tables): Unit
  50. def setWorkspaceDirectory(newWorkspace: io.AbsolutePath): Unit
  51. def sourceBuildTargets(sourceItem: io.AbsolutePath): Iterable[BuildTargetIdentifier]
  52. def sourceItems: Iterable[io.AbsolutePath]
  53. def sourceItemsToBuildTargets: Iterator[(io.AbsolutePath, java.lang.Iterable[BuildTargetIdentifier])]
  54. def sourceRoots: Iterable[io.AbsolutePath]
  55. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  56. def toString(): String
    Definition Classes
    AnyRef → Any
  57. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  58. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  59. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  60. def workspaceDirectory(buildTarget: BuildTargetIdentifier): Option[io.AbsolutePath]

Inherited from AnyRef

Inherited from Any

Ungrouped