Mã bên dưới không biên dịch nếu tôi bỏ ghi chú dòng được chỉ ra. Trình biên dịch phàn nàn: "yêu cầu định danh ổn định".Tại sao tôi không thể khớp mẫu trên Stream.empty trong Scala?
val Empty = Stream.empty
val a = Stream.range(0, 5)
a match {
// case Stream.empty => println("nope") <-- does not work
case Empty => println("compiles") <-- works
case _ => println("ok")
}
Nếu tôi gán Stream.empty
để đánh giá Empty
đầu tiên, nó hoạt động, nhưng nó cảm thấy lạ mà bạn không thể mô hình phù hợp trên một giá trị cơ bản như vậy mà không một hack như vậy.
Tôi có thiếu gì đó không?
'trường hợp Stream() => 'làm việc quá –