Skip to content

Instantly share code, notes, and snippets.

@debasishg
Created July 28, 2011 11:11
Show Gist options
  • Save debasishg/1111392 to your computer and use it in GitHub Desktop.
Save debasishg/1111392 to your computer and use it in GitHub Desktop.
scala> val l = List(10, 100, 1000, 10000)
l: List[Int] = List(10, 100, 1000, 10000)
scala> l.orElse[Int, Int]{ case i: Int => 34 }
res14: PartialFunction[Int,Int] = <function1>
scala> res14(0)
res15: Int = 10
scala> res14(10)
res16: Int = 34
scala> l.map(_ * 2).orElse[Int, Int]{ case i: Int => 34 }
res17: PartialFunction[Int,Int] = <function1>
scala> res17(10)
res18: Int = 34
scala> l.map(_.toString.length).orElse[Int, Int]{ case i: Int => 34 }
res19: PartialFunction[Int,Int] = <function1>
scala> res19(10)
res20: Int = 34
scala> l.map(_.toString).orElse[Int, String]{ case i: Int => "bah" }
res21: PartialFunction[Int,String] = <function1>
scala> res21(10)
res22: String = bah
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment