公式APIページで「時間」を検索しましたが、クラスが見つかりません。RichLongとRichIntのすべてのメソッドを調べましたが、メソッドが見つかりません。
私は特にint/longからある種のリッチオブジェクトに変換するメソッドについて話している:
2 hours + 12 seconds
私はパッケージが何であるかを尋ねているのではないことに注意してください、私はそれを見つける方法を知りたいです。
-Xlog-implicits
フラグを使用して、コンパイラーに暗黙の変換を検出している場所を表示させることができます。
それらは標準のScalaAPIにはありません。JodaTimeにscala-timeラッパーを使用していますか?もしそうなら、それはあなたにどこを見るべきかを教えてくれるでしょう。一般に、どのインポートで機能が有効になるかがわかっている場合は、ドキュメントを検索するときに非常に役立ちます。
メソッド名がわかっている場合は、左側のパネルの上部、ScalaDocの検索テキストフィールドのすぐ下にある小さな文字をクリックできます。これにより、メソッドを含む、その名前のドキュメント内のすべてのリストが表示されます(そしてそれを見つける方法を教えてください)。
クラス自体にメソッドがない場合は、Scalaを使用して、変換されるクラスを通知できます。
def whoHasSize[A](a: A)(implicit ev: A => { def size: Int }) = ev(a).getClass.getName
scala> whoHasSize("fish")
res1: java.lang.String = scala.collection.immutable.StringOps
したがって、ここでは、文字列自体にメソッド"fish"
がないことがわかります。size
代わりに、それはメソッドによって付与されscala.collection.immutable.StringOps
ます。あなたはについて知るために同じことをすることができますseconds
。
最後に、シチューの答えはおそらくあなたが本当に探していたものです!