XCode 10.3 日本語化計画: Swift 標準ライブラリ


文書   >   Swift   >   Swift 標準ライブラリ   >   Basic Behaviors   >   CaseIterable

プロトコル


CaseIterable


そのすべての値のコレクションを提供する型。




宣言


protocol CaseIterable



概要


CaseIterable プロトコルに準拠する型は通常、関連した値を持たない列挙型です。CaseIterable 型を使用する場合は、その型の allCases プロパティを使用して、その型のすべての case のコレクションにアクセスできます。


たとえば、この例で宣言されている CompassDirection の列挙体は CaseIterable に準拠しています。あなたは CompassDirection.allCases を通して case の数と case 自体にアクセスします。


enum CompassDirection: CaseIterable {
    case north, south, east, west
}

print("There are \(CompassDirection.allCases.count) directions.")
// Prints "There are 4 directions."
let caseList = CompassDirection.allCases
                               .map({ "\($0)" })
                               .joined(separator: ", ")
// caseList == "north, south, east, west"


CaseIterable プロトコルへの準拠


コンパイラは、列挙型の case の関連した値や @available の属性なしで、その CaseIterable 要件の実装を自動的に提供できます。合成された allCases コレクションは、宣言順に case を提供します。


列挙体の元々の宣言で CaseIterable への準拠を宣言することで、独自のカスタムの列挙体を定義するときに、このコンパイラのサポートを利用できます。上記の CompassDirection の例は、この自動的な実装を示しています。


トピックス




Case へのアクセス


目次
Xcode の新機能

  • 言語:Swift
  • SDK:
  • Xcode 10.0+
  • フレームワーク
  • Swift 標準ライブラリ
  • 宣言
  • 概要
  • トピックス
  • 関連
  • 以下も見よ












  • トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)












    トップへ(Swift 標準ライブラリ)