Pengambilan sampel

public struct Sampling<Base: Collection, Selection: Collection>
where Selection.Element == Base.Index
extension Sampling: SamplingProtocol
extension Sampling: Collection
extension Sampling: BidirectionalCollection
  where Selection: BidirectionalCollection
extension Sampling: RandomAccessCollection
  where Selection: RandomAccessCollection

Pemilihan elemen yang lambat, dalam urutan tertentu, dari beberapa koleksi dasar.

  • Membuat instance dari base dan selection .

    Pernyataan

    public init(base: Base, selection: Selection)
  • Pernyataan

    public typealias Element = Base.Element
  • Tipe yang instance-nya mewakili posisi di self .

    Pernyataan

    public typealias Index = Selection.Index
  • Posisi elemen pertama.

    Pernyataan

    public var startIndex: Index { get }
  • Posisinya melewati elemen terakhir.

    Pernyataan

    public var endIndex: Index { get }
  • Mengembalikan elemen di i .

    Pernyataan

    public subscript(i: Index) -> Element { get }
  • Mengembalikan posisi setelah i .

    Pernyataan

    public func index(after i: Index) -> Index
  • Mengembalikan jumlah langkah maju yang diperlukan untuk mengubah start menjadi end .

    Hasil negatif menunjukkan bahwa end < start .

    Pernyataan

    public func distance(from start: Index, to end: Index) -> Int
  • Mengembalikan posisi n tempat dari i .

    Pernyataan

    public func index(_ i: Index, offsetBy n: Int) -> Index
  • Mengembalikan i diimbangi dengan distance kecuali memerlukan limit kelulusan, dalam hal ini nil dikembalikan.

    Pernyataan

    public func index(
      _ i: Index, offsetBy distance: Int, limitedBy limit: Index
    ) -> Index?
Tersedia di mana `Selection`: `BidirectionCollection`