diff options
Diffstat (limited to 'examples/scala-js/tools/shared/src/main/scala/scala/scalajs/tools/classpath/CompleteClasspath.scala')
-rw-r--r-- | examples/scala-js/tools/shared/src/main/scala/scala/scalajs/tools/classpath/CompleteClasspath.scala | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/examples/scala-js/tools/shared/src/main/scala/scala/scalajs/tools/classpath/CompleteClasspath.scala b/examples/scala-js/tools/shared/src/main/scala/scala/scalajs/tools/classpath/CompleteClasspath.scala new file mode 100644 index 0000000..6646a7b --- /dev/null +++ b/examples/scala-js/tools/shared/src/main/scala/scala/scalajs/tools/classpath/CompleteClasspath.scala @@ -0,0 +1,35 @@ +/* __ *\ +** ________ ___ / / ___ __ ____ Scala.js tools ** +** / __/ __// _ | / / / _ | __ / // __/ (c) 2013-2014, LAMP/EPFL ** +** __\ \/ /__/ __ |/ /__/ __ |/_// /_\ \ http://scala-js.org/ ** +** /____/\___/_/ |_/____/_/ | |__/ /____/ ** +** |/____/ ** +\* */ + + +package scala.scalajs.tools.classpath + +import scala.collection.immutable.Seq + +import scala.scalajs.tools.io.VirtualJSFile +import scala.scalajs.tools.jsdep.ResolutionInfo + +/** A classpath where nothing is missing. Therefore: + * - All JS libraries are resolved and ordered + * - The CoreJSLibs are present + * - Nothing can be added anymore + */ +abstract class CompleteClasspath( + /** Resolved JS libraries */ + val jsLibs: Seq[ResolvedJSDependency], + val requiresDOM: Boolean, + val version: Option[String] +) { + + /** Fully linked Scala.js code */ + def scalaJSCode: VirtualJSFile + + /** All code in this complete classpath */ + final def allCode: Seq[VirtualJSFile] = jsLibs.map(_.lib) :+ scalaJSCode + +} |