4
WrappedStringのScaladoc 2.8.1:scala.collection.immutable.WrappedStringは、文書化された機能を実現するために暗黙のCanBuildFromを必要としますか?
「このクラスは、インデックス付き配列で見つかったすべての操作で文字列を拡張ラッパーとして機能し、このクラスとStringOps間 差がするようフィルタとしてトランスメソッドを呼び出して、マップすることです。型WrappedStringの目的ではなく、文字列」
scala> import scala.collection.immutable.WrappedString
import scala.collection.immutable.WrappedString
scala> val s = new WrappedString("foo")
s: scala.collection.immutable.WrappedString = WrappedString(f, o, o)
scala> s.filter(x => true)
res1: scala.collection.immutable.WrappedString = WrappedString(f, o, o)
scala> s.map(x => x)
res2: scala.collection.immutable.IndexedSeq[Char] = Vector(f, o, o)
残念なことには、マップがベクトルとしないWrappedStringを返しをもたらします。
フィルタはnewBuilderメソッドを使用するだけで動作しますが、マップにはBitSetのようにWrappedStringの暗黙のCanBuildFromが必要です。これはコードやドキュメントのバグですか、何か不足していますか?
def map [B] (f: (Char) ⇒ B) : WrappedString[B]
def map [B, That] (f: (Char) ⇒ B)(implicit bf: CanBuildFrom[WrappedString, B, That]) : That
が、それはすべきではない:
def map [B] (f: (Char) ⇒ Char) : WrappedString
def map [B, That] (f: (Char) ⇒ B)(implicit bf: CanBuildFrom[WrappedString, B, That]) : That
また、scaladoc簡易版は、私にはどんな意味がありませんか?
これは既知のバグですか?私はhttps://lampsvn.epfl.ch/tracで何かを見つけることができませんでしたが、私が何かを報告する前にここでチェックしたかったのです...? –
私はそれについての切符があったとは思わない、それを報告するのはおそらく良い考えです。 – axel22
ありがとう、私はここでチケットを開けた:https://lampsvn.epfl.ch/trac/scala/ticket/4232 –