のようなコードを書いたことがあるのではないかと思います。この implicitly というメソッドですが、しばしばScalaの黒魔術であると思われるようです(誰か特定の方の発言ではなくて、そういう趣旨の発言を時々みかけます)。 しかし、この implicitly 、定義を見てみるとわかるのですが、実は以下のたった一行のメソッドです。 @inline は最適化のためのヒントで特に意味はないですが、要は単一のimplicit parameterを取ってそれをそのまま返しているだけです。これに対して、たとえば implicitly[Hoge[T]] という呼び出しをすると、implicitなHoge[T]型の値を要求して、それをそのまま返すことになるわけです。 実のところ、implicit parameterを明示的に宣言している場合は、implicitly は必要ありません(上の定義を見ればわ
![詳説implicitly(あるいはimplicitlyは黒魔術でないことの説明) - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/cbc1f0f7d57c0fbd7dc87d81bc07542c36a83eff/height=288;version=1;width=512/https%3A%2F%2Fcdn.qiita.com%2Fassets%2Fqiita-fb-2887e7b4aad86fd8c25cea84846f2236.png)