1 2 3 4 5 6 7 8 9 10 11
object partialfun { def applyPartial[b](f: PartialFunction[Option[String], b])(x: Option[String]) = if (f.isDefinedAt(x)) f(x) else "<undefined>"; applyPartial { case Some(xxx) => xxx case None => throw new MatchError(None) } (None); }