タイトル質問を言い換えると、関数のスコープ内の関数の暗黙的な値に対する暗黙のパラメータですか?ここで暗黙的なパラメータ値自体は暗黙的な値ですか?
は、小規模なテストです:
object ImplicitTest{
case class Foo()
def myOtherFun()(implicit myfoo: Foo) = {
val grabImpFoo = implicitly[Foo]
println(myfoo.toString + " from myOtherFun")
}
}
import ImplicitTest._
class ImplicitTest {
def myFun()(implicit myfoo: Foo) = {
println(myfoo.toString)
myOtherFun()
}
}
は今、それを実行します。
implicit val foo = Foo()
val it = new ImplicitTest()
it.myFun()
これはmyOtherFun
は私がやった、暗黙の引数を見つけることができますので、暗黙の暗黙のパラメータが自分自身であることを私に実証するようですしばらくの間信じられませんでした!これには長所と短所があると思いますが、私は事実を学ぶためにここにいます。私はhttp://docs.scala-lang.org/tutorials/FAQ/finding-implicits.html(Passing scala.math.Integral as implicit parameterに基づいて)を見て、私が事を正しく理解しているなら、この事実の言及を見ませんでした。範囲内
あなたの質問は何ですか? –
タイトルは、言い換えれば、関数のスコープ内の関数の暗黙的な値に対する暗黙のパラメータですか? – bbarker