search

trait Collection[A] {
  def search[B >: A](e: B): SearchResult
  def search[B >: A](e: B, i: Int, j: Int): SearchResult
}

search は、このコレクションから要素 e に等しい(==)最初の要素を探索し、見つかった位置のインデックスを含む Found を返します。

もし e がコレクションで見つからなければ、その要素を挿入できるインデックスを含んだ InsertionPoint を返します。

探索は、区間 [i, j) に制限できます。