Adjust discovery code to new Zinc

This commit is contained in:
Eugene Yokota 2016-05-05 16:11:57 -04:00
parent fd7c162ea8
commit 738e8fb2f3
3 changed files with 11 additions and 4 deletions

View File

@ -275,10 +275,12 @@ object Tests {
def allDefs(analysis: CompileAnalysis) = analysis match {
case analysis: Analysis =>
analysis.apis.internal.values.flatMap { ac =>
val acs: Seq[xsbti.api.AnalyzedClass] = analysis.apis.internal.values.toVector
acs.flatMap { ac =>
val companions = ac.api
val all =
companions.classApi.structure.declared ++ companions.classApi.structure.inherited ++
Seq(companions.classApi, companions.objectApi) ++
companions.classApi.structure.declared ++ companions.classApi.structure.inherited ++
companions.objectApi.structure.declared ++ companions.objectApi.structure.inherited
all

View File

@ -23,7 +23,9 @@ object PluginDiscovery {
final val Builds = "sbt/sbt.builds"
}
/** Names of top-level modules that subclass sbt plugin-related classes: [[Plugin]], [[AutoPlugin]], and [[BuildDef]]. */
final class DiscoveredNames(val plugins: Seq[String], val autoPlugins: Seq[String], val builds: Seq[String])
final class DiscoveredNames(val plugins: Seq[String], val autoPlugins: Seq[String], val builds: Seq[String]) {
override def toString: String = s"""DiscoveredNames($plugins, $autoPlugins, $builds)"""
}
def emptyDiscoveredNames: DiscoveredNames = new DiscoveredNames(Nil, Nil, Nil)
@ -96,7 +98,8 @@ object PluginDiscovery {
def sourceModuleNames(analysis: CompileAnalysis, subclasses: String*): Seq[String] =
{
val subclassSet = subclasses.toSet
val ds = Discovery(subclassSet, Set.empty)(Tests.allDefs(analysis))
val defs = Tests.allDefs(analysis)
val ds = Discovery(subclassSet, Set.empty)(defs)
ds.flatMap {
case (definition, Discovered(subs, _, _, true)) =>
if ((subs & subclassSet).isEmpty) Nil else definition.name :: Nil

View File

@ -1,3 +1,5 @@
> plugins
# single project, 'mark' not defined
-> mark
$ absent ran