diff options
author | Guillaume Martres <smarter@ubuntu.com> | 2016-11-20 00:02:50 +0100 |
---|---|---|
committer | Guillaume Martres <smarter@ubuntu.com> | 2016-11-22 01:35:08 +0100 |
commit | c3eb841ce8ae349d9820dbf6c18884955e74254e (patch) | |
tree | 5e82e22a6f0e8245c11a6db81cb9647106a14bde /sbt-bridge/test/xsbti | |
parent | da1bfe392c638fc03181e0d6b51eb41dbdcce548 (diff) | |
download | dotty-c3eb841ce8ae349d9820dbf6c18884955e74254e.tar.gz dotty-c3eb841ce8ae349d9820dbf6c18884955e74254e.tar.bz2 dotty-c3eb841ce8ae349d9820dbf6c18884955e74254e.zip |
Make every project use the new directory structure
Diffstat (limited to 'sbt-bridge/test/xsbti')
-rw-r--r-- | sbt-bridge/test/xsbti/TestCallback.scala | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/sbt-bridge/test/xsbti/TestCallback.scala b/sbt-bridge/test/xsbti/TestCallback.scala new file mode 100644 index 000000000..b849e1a80 --- /dev/null +++ b/sbt-bridge/test/xsbti/TestCallback.scala @@ -0,0 +1,35 @@ +/** Copied from https://github.com/sbt/sbt/blob/0.13/interface/src/test/scala/xsbti/TestCallback.scala */ +package xsbti + +import java.io.File +import scala.collection.mutable.ArrayBuffer +import xsbti.api.SourceAPI +import xsbti.DependencyContext._ + +class TestCallback(override val nameHashing: Boolean = false) extends AnalysisCallback +{ + val sourceDependencies = new ArrayBuffer[(File, File, DependencyContext)] + val binaryDependencies = new ArrayBuffer[(File, String, File, DependencyContext)] + val products = new ArrayBuffer[(File, File, String)] + val usedNames = scala.collection.mutable.Map.empty[File, Set[String]].withDefaultValue(Set.empty) + val apis: scala.collection.mutable.Map[File, SourceAPI] = scala.collection.mutable.Map.empty + + def sourceDependency(dependsOn: File, source: File, inherited: Boolean): Unit = { + val context = if(inherited) DependencyByInheritance else DependencyByMemberRef + sourceDependency(dependsOn, source, context) + } + def sourceDependency(dependsOn: File, source: File, context: DependencyContext): Unit = { sourceDependencies += ((dependsOn, source, context)) } + def binaryDependency(binary: File, name: String, source: File, inherited: Boolean): Unit = { + val context = if(inherited) DependencyByInheritance else DependencyByMemberRef + binaryDependency(binary, name, source, context) + } + def binaryDependency(binary: File, name: String, source: File, context: DependencyContext): Unit = { binaryDependencies += ((binary, name, source, context)) } + def generatedClass(source: File, module: File, name: String): Unit = { products += ((source, module, name)) } + + def usedName(source: File, name: String): Unit = { usedNames(source) += name } + def api(source: File, sourceAPI: SourceAPI): Unit = { + assert(!apis.contains(source), s"The `api` method should be called once per source file: $source") + apis(source) = sourceAPI + } + def problem(category: String, pos: xsbti.Position, message: String, severity: xsbti.Severity, reported: Boolean): Unit = () +} |