File: t3136.scala

package info (click to toggle)
scala 2.11.12-6
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 62,924 kB
  • sloc: javascript: 28,808; java: 13,415; xml: 3,135; sh: 1,620; python: 756; makefile: 38; awk: 36; ansic: 6
file content (19 lines) | stat: -rw-r--r-- 548 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
class Type
class Symbol
case class PolyType(tps: List[Symbol], res: Type) extends Type
class OtherType extends Type

// case class NullaryMethodType(tp: Type) extends Type

object NullaryMethodType {
  def apply(resTpe: Type): Type = PolyType(List(), resTpe)
  def unapply(tp: Type): Option[(Type)] = None
}

object Test {
  def TEST(tp: Type): String =
    tp match {
      case PolyType(ps1, PolyType(ps2, res @ PolyType(a, b))) => "1"+tp // couldn't find a simpler version that still crashes
      case NullaryMethodType(meh) => "2"+meh
    }
}