Given this pattern match:

```
List(1,2,3) match {
  case head :: tail => println(">>> head=" + head)
}

```

I'm assuming that '::' is the case class found in scala.collection.immutable, but how is '::' allowed to be written in that form (infix notation)? - is there a specific rule to allow for that?

Thanks