だから私はツイッターのScalaスクールを通してScalaを学ぼうとしています。しかし、私は現在、それらの型にバインドされた例の1つで立ち往生しています。
特に、<%<
型関係演算子を使用して、型が特定の型として表示できるようにバインドされているものです。
Scalaコンソールで次のコードを実行すると:
scala> class Container[A](value: A) { def addIt(implicit evidence: A <%< Int) = 123 + value }
...次のエラーが発生します。
<console>:7: error: not found: type <%<
class Container[A](value: A) { def addIt(implicit evidence: A <%< Int) = 123 + value }
^
<console>:7: error: overloaded method value + with alternatives:
(x: Double)Double <and>
(x: Float)Float <and>
(x: Long)Long <and>
(x: Int)Int <and>
(x: Char)Int <and>
(x: Short)Int <and>
(x: Byte)Int <and>
(x: String)String
cannot be applied to (A)
class Container[A](value: A) { def addIt(implicit evidence: A <%< Int) = 123 + value }
私の質問は、Scalaインタープリターが不平を言っているのはなぜですか?
私はScalaのドキュメントを調べようとしましたが、そのオペレーターの情報をどこにも見つけることができませんでした。ScalaスクールはScala2.8.0に基づいて作成されており、Scala 2.10.0を実行していることがわかります。これは削除されたのでしょうか?これが事実である場合、それが有用な演算子のように見えるので、なぜこれはなぜですか?