আমি কয়েকটি কেস ক্লাসের সাথে মিলে যাচ্ছি এবং দুটি ক্ষেত্রে একইভাবে পরিচালনা করতে চাই। এটার মতো কিছু:
abstract class Foo
case class A extends Foo
case class B(s:String) extends Foo
case class C(s:String) extends Foo
def matcher(l: Foo): String = {
l match {
case A() => "A"
case B(sb) | C(sc) => "B"
case _ => "default"
}
}
তবে আমি যখন এটি করি তখন ত্রুটিটি পাই:
(fragment of test.scala):10: error: illegal variable in pattern alternative
case B(sb) | C(sc) => "B"
আমি এটিকে কাজ করে নিতে পারি আমি বি এবং সি এর সংজ্ঞা থেকে পরামিতিগুলি সরিয়ে ফেলি তবে কীভাবে আমি প্যারামগুলির সাথে মেলে পারি?