summaryrefslogtreecommitdiff
path: root/test/pending/run/structural-types-vs-anon-classes.scala
blob: 23410e395505c720fef39663a80aeb271eb689aa (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
object Test {
  class Arm
  class Leg
  class Tail
  class Monkey(arms: List[Arm], legs :List[Leg], tail: Tail)
  
  def makeAwesomeMonkey(arms: List[Arm], legs: List[Leg], tail: Tail) = {
    object m extends Monkey(arms, legs, tail) {
      def beAwesome () = "I can fly! I can fly!"
    }
    m
  }
  
  def main(args: Array[String]): Unit = {
    println(makeAwesomeMonkey(Nil, Nil, new Tail) beAwesome)
  }
}