假设以下设置:
trait A[L] { def op(l1:L, l2:L): L }
trait E[L] { def op(l:L): L }
implicit def some2E[L:A](self:L) = new E[L] { def op(other:L) =
implicitly[A[L]].op(self,other) }
有没有办法在适当的隐式上下文中直接扩展m op n
为,使用宏或至少避免额外的对象创建?a.op(m,n)
a
A
假设以下设置:
trait A[L] { def op(l1:L, l2:L): L }
trait E[L] { def op(l:L): L }
implicit def some2E[L:A](self:L) = new E[L] { def op(other:L) =
implicitly[A[L]].op(self,other) }
有没有办法在适当的隐式上下文中直接扩展m op n
为,使用宏或至少避免额外的对象创建?a.op(m,n)
a
A