有没有办法约束一个方法,只有两种类型被证明不相等才有意义?
trait Something[A, B] {
// I can only be called if type A is the same as type B
def ifEqual(implicit ev: A =:= B)
// Now I cannot be called if type A is proven to be the same as type B
def ifNotEqual(implicit ev: A ??? B)
}
Run Code Online (Sandbox Code Playgroud)