PluginDiscovery

sbt.internal.PluginDiscovery$

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Self type

Members list

Concise view

Type members

Classlikes

final class DiscoveredNames(val autoPlugins: Seq[String], val builds: Seq[String])

Names of top-level modules that subclass sbt plugin-related classes: AutoPlugin, and BuildDef.

Names of top-level modules that subclass sbt plugin-related classes: AutoPlugin, and BuildDef.

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
object Paths

Relative paths of resources that list top-level modules that are available. Normally, the classes for those modules will be in the same classpath entry as the resource.

Relative paths of resources that list top-level modules that are available. Normally, the classes for those modules will be in the same classpath entry as the resource.

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Paths.type

Value members

Concrete methods

def binaryModuleNames(classpath: Seq[File], loader: ClassLoader, resourceName: String): Seq[String]

Obtains the list of modules identified in all resource files resourceName from loader that are on classpath. classpath and loader are both required to ensure that loader doesn't bring in any resources outside of the intended classpath, such as from parent loaders.

Obtains the list of modules identified in all resource files resourceName from loader that are on classpath. classpath and loader are both required to ensure that loader doesn't bring in any resources outside of the intended classpath, such as from parent loaders.

Attributes

def binarySourceModuleNames(classpath: Seq[Attributed[File]], loader: ClassLoader, resourceName: String, subclasses: String*): Seq[String]

Discovers the names of top-level modules listed in resources named resourceName as per binaryModuleNames or available as analyzed source and extending from any of subclasses as per sourceModuleNames.

Discovers the names of top-level modules listed in resources named resourceName as per binaryModuleNames or available as analyzed source and extending from any of subclasses as per sourceModuleNames.

Attributes

def discoverAll(data: PluginData, loader: ClassLoader): DetectedPlugins

Discovers and loads the sbt-plugin-related top-level modules from the classpath and source analysis in data and using the provided class loader.

Discovers and loads the sbt-plugin-related top-level modules from the classpath and source analysis in data and using the provided class loader.

Attributes

def discoverSourceAll(analysis: CompileAnalysis): DiscoveredNames

Discovers the sbt-plugin-related top-level modules from the provided source analysis.

Discovers the sbt-plugin-related top-level modules from the provided source analysis.

Attributes

def onClasspath(classpath: Seq[File])(url: URL): Boolean

Returns true if url is an entry in classpath.

Returns true if url is an entry in classpath.

Attributes

def sourceModuleNames(analysis: CompileAnalysis, subclasses: String*): Seq[String]

Discovers top-level modules in analysis that inherit from any of subclasses.

Discovers top-level modules in analysis that inherit from any of subclasses.

Attributes

def writeDescriptor(names: Seq[String], dir: File, path: String): Option[File]

Stores the module names in dir / path, one per line, unless names is empty and then the file is deleted and None returned.

Stores the module names in dir / path, one per line, unless names is empty and then the file is deleted and None returned.

Attributes

def writeDescriptors(names: DiscoveredNames, dir: File): Seq[File]

Writes discovered module names to zero or more files in dir as per writeDescriptor and returns the list of files written.

Writes discovered module names to zero or more files in dir as per writeDescriptor and returns the list of files written.

Attributes