summaryrefslogtreecommitdiff
path: root/src/library/scala/PartialFunction.scala
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2009-12-07 16:39:35 +0000
committerMartin Odersky <odersky@gmail.com>2009-12-07 16:39:35 +0000
commit147ecff4e59eb70c13bab1559cd52f1745735c5d (patch)
treef47e955a86a4c5344363b36718d1da1039ff552f /src/library/scala/PartialFunction.scala
parentba33e9ba9975d17dc62ad6f4f65c0d5c5c0f280f (diff)
downloadscala-147ecff4e59eb70c13bab1559cd52f1745735c5d.tar.gz
scala-147ecff4e59eb70c13bab1559cd52f1745735c5d.tar.bz2
scala-147ecff4e59eb70c13bab1559cd52f1745735c5d.zip
Added lift method to PartialFunction
Diffstat (limited to 'src/library/scala/PartialFunction.scala')
-rw-r--r--src/library/scala/PartialFunction.scala2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/library/scala/PartialFunction.scala b/src/library/scala/PartialFunction.scala
index 238ab2a588..1543673015 100644
--- a/src/library/scala/PartialFunction.scala
+++ b/src/library/scala/PartialFunction.scala
@@ -41,6 +41,8 @@ trait PartialFunction[-A, +B] extends AnyRef with (A => B) {
def isDefinedAt(x: A): Boolean = PartialFunction.this.isDefinedAt(x)
def apply(x: A): C = k(PartialFunction.this.apply(x))
}
+
+ def lift: A => Option[B] = { x => if (isDefinedAt(x)) Some(this(x)) else None }
}
/** A few handy operations which leverage the extra bit of information