static var allCases : Self.AllCases
associatedtype AllCases
Availability
Technology
protocol CaseIterable
Types that conform to the Case
protocol are typically enumerations without associated values. When using a Case
type, you can access a collection of all of the type’s cases by using the type’s all
property.
Case
プロトコルに準拠する型は、概して関連値を持たない列挙です。Case
型を使う場合、あなたはその型のもつケース節の全てからなるコレクションにアクセスすることが、その型のもつall
プロパティを使うことで可能です。
For example, the Compass
enumeration declared in this example conforms to Case
. You access the number of cases and the cases themselves through Compass
.
例えば、この例で定義されるCompass
列挙はCase
に準拠します。あなたは、ケース節の数およびケース節それ自体にアクセスすることがCompass
を通して可能です。
The compiler can automatically provide an implementation of the Case
requirements for any enumeration without associated values or @available
attributes on its cases. The synthesized all
collection provides the cases in order of their declaration.
コンパイラは、自動的にCase
要件の実装を提供することが、関連値または@available
属性をそれのケース節上で持たないあらゆる列挙に対して可能です。合成されたall
コレクションは、ケース節をそれらの宣言の順に提供します。
You can take advantage of this compiler support when defining your own custom enumeration by declaring conformance to Case
in the enumeration’s original declaration. The Compass
example above demonstrates this automatic implementation.
あなたはこのコンパイラサポートを、あなた独自のあつらえの列挙をCase
への準拠をその列挙の元の宣言において宣言することによって定義する場合に利用できます。上のCompass
例は、この自動実装を実演します。
static var allCases : Self.AllCases
associatedtype AllCases
Algorithm
Axis
BNNS.ArithmeticBinaryFunction
BNNS.ArithmeticUnaryFunction
BNNS.DataLayout
CLKComplicationFamily
ColorScheme
ColorSchemeContrast
ContentMode
ContentSizeCategory
ControlActiveState
ControlSize
Edge
Font.TextStyle
HKAppleWalkingSteadinessClassification
HorizontalEdge
Image.Orientation
InterfaceOrientation
LayoutDirection
MLProgress.Metric
TextAlignment
VerticalEdge
Visibility
vDSP.DCTTransformType
protocol RawRepresentable