summaryrefslogtreecommitdiff
path: root/src/reflect/scala/reflect/internal/MissingRequirementError.scala
diff options
context:
space:
mode:
authorEugene Burmako <xeno.by@gmail.com>2012-06-08 02:36:10 +0200
committerEugene Burmako <xeno.by@gmail.com>2012-06-08 15:32:28 +0200
commit0b2f1bcf75d31c59b25e19eebcb80f39c155365b (patch)
tree8d9dfc50ef01ca48c068b232af7e67a723325388 /src/reflect/scala/reflect/internal/MissingRequirementError.scala
parent13213e3df0384b1fd815c0798758a22284572cdb (diff)
downloadscala-0b2f1bcf75d31c59b25e19eebcb80f39c155365b.tar.gz
scala-0b2f1bcf75d31c59b25e19eebcb80f39c155365b.tar.bz2
scala-0b2f1bcf75d31c59b25e19eebcb80f39c155365b.zip
Introduces scala-reflect.jar
Diffstat (limited to 'src/reflect/scala/reflect/internal/MissingRequirementError.scala')
-rw-r--r--src/reflect/scala/reflect/internal/MissingRequirementError.scala24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/reflect/scala/reflect/internal/MissingRequirementError.scala b/src/reflect/scala/reflect/internal/MissingRequirementError.scala
new file mode 100644
index 0000000000..fbbbcc1928
--- /dev/null
+++ b/src/reflect/scala/reflect/internal/MissingRequirementError.scala
@@ -0,0 +1,24 @@
+/* NSC -- new Scala compiler
+ * Copyright 2005-2011 LAMP/EPFL
+ * @author Martin Odersky
+ */
+
+package scala.reflect
+package internal
+
+class MissingRequirementError private (msg: String) extends FatalError(msg) {
+ import MissingRequirementError.suffix
+ def req: String = if (msg endsWith suffix) msg dropRight suffix.length else msg
+}
+
+object MissingRequirementError {
+ private val suffix = " not found."
+ def signal(msg: String): Nothing = throw new MissingRequirementError(msg)
+ def notFound(req: String): Nothing = signal(req + suffix)
+ def unapply(x: Throwable): Option[String] = x match {
+ case x: MissingRequirementError => Some(x.req)
+ case _ => None
+ }
+}
+
+