RosettaCodeData/Task/Parametric-polymorphism/Scala/parametric-polymorphism-1.scala

5 lines
178 B
Scala
Raw Permalink Normal View History

2013-04-10 23:57:08 -07:00
case class Tree[+A](value: A, left: Option[Tree[A]], right: Option[Tree[A]]) {
def map[B](f: A => B): Tree[B] =
Tree(f(value), left map (_.map(f)), right map (_.map(f)))
}