ある種の変数があり、コンパニオン オブジェクトから情報を取得したいと考えています。たとえば、次のようなことができるのではないかと考えました。
def foo[I: Integral](i:I): = {
val minVal = i match {
case _:Byte => Byte.MinValue
case _:Char => Char.MinValue
case _:Int => Int.MinValue
case _:Long => Long.MinValue
case _:Short => Short.MinValue
}
// compare i and minVal
}
しかし、これはかなり冗長であり、 との比較minVal
が:Long
複雑になりi: I
ます。
簡潔で直接的な何かを見つけたいと思っていましたが、これには熟考が必要であると思われますが、それはしばしばどちらでもありません.