相关疑难解决方法(0)

如何使隐式函数可用于内部函数

我想在包装函数中定义隐式值,并将其提供给内部函数使用,到目前为止,我设法通过从包装器传递隐式变量来做到这一点:

case class B()

trait Helper {
  def withImplicit[A]()(block: => A): A = {
    implicit val b: B = B()
    block
  }
}

class Test extends Helper {
  def useImplicit()(implicit b: B): Unit = {...}

  def test = {
    withImplicit() { implicit b: B =>
      useImplicit()
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

是否有可能避免implicit b: B =>,并implicit val b: B = B()提供给内部功能块?

scala implicit dotty higher-order-functions

2
推荐指数
1
解决办法
84
查看次数

标签 统计

dotty ×1

higher-order-functions ×1

implicit ×1

scala ×1