Aks
Aks

Reputation: 184

Scala: Fruitless Type Test Warning

I am trying to write a scala function to reverse a list. However, IDEA is highlighting the (warning) line saying "fruitless type test: a value of type ListDefinition.List[T] cannot also be a::[B]"

object ListDefinition {
            def reverseList[T](list: List[T]) : List[T] = list match {
  (warning) case x :: EmptyList =>  // something
            case _ => // do somehting
}

abstract class List[+T]
case object EmptyList extends List[Nothing] 
case class ConsList[T](value: T, next: List[T]) extends List[T]

Upvotes: 2

Views: 4187

Answers (1)

T Burnside
T Burnside

Reputation: 121

The case statement needs to use the Cons constructor for your list:

case ConsList(x, EmptyList) => // something

The :: constructor is for Scala lists and will not work for yours.

Upvotes: 3

Related Questions