aboutsummaryrefslogtreecommitdiff
path: root/src/dotty/tools/backend/jvm/DottyBackendInterface.scala
diff options
context:
space:
mode:
Diffstat (limited to 'src/dotty/tools/backend/jvm/DottyBackendInterface.scala')
-rw-r--r--src/dotty/tools/backend/jvm/DottyBackendInterface.scala17
1 files changed, 9 insertions, 8 deletions
diff --git a/src/dotty/tools/backend/jvm/DottyBackendInterface.scala b/src/dotty/tools/backend/jvm/DottyBackendInterface.scala
index 461d4aa79..1710c1325 100644
--- a/src/dotty/tools/backend/jvm/DottyBackendInterface.scala
+++ b/src/dotty/tools/backend/jvm/DottyBackendInterface.scala
@@ -660,35 +660,36 @@ class DottyBackendInterface()(implicit ctx: Context) extends BackendInterface{
// todo: this product1s should also eventually become name-based pattn matching
object Literal extends LiteralDeconstructor {
- def unapply(a: Literal): Option[Constant] = Some(a.const)
+ def get = field.const
}
object Throw extends ThrowDeconstructor {
- def unapply(s: Throw): Option[Tree] = Some(s.expr)
+ def get = field.expr
}
object New extends NewDeconstructor {
- def unapply(s: New): Option[Type] = Some(s.tpt.tpe)
+ def get = field.tpt.tpe
}
object This extends ThisDeconstructor {
- def unapply(s: This): Option[Name] = Some(s.qual)
+ def get = field.qual
def apply(s: Symbol): This = tpd.This(s.asClass)
}
object Return extends ReturnDeconstructor {
- def unapply(s: Return): Option[Tree] = Some(s.expr)
+ def get = field.expr
}
object Ident extends IdentDeconstructor {
- def unapply(s: Ident): Option[Name] = Some(s.name)
+ def get = field.name
}
object Alternative extends AlternativeDeconstructor {
- def unapply(s: Alternative): Option[List[Tree]] = Some(s.trees)
+ def get = field.trees
}
+
object Constant extends ConstantDeconstructor {
- def unapply(a: Constant): Option[Any] = Some(a.value)
+ def get = field.value
}
object ThrownException extends ThrownException {
def unapply(a: Annotation): Option[Symbol] = None // todo