static var name: String
associatedtype Value
Availability 有効性
Technology
protocol AttributedStringKey
You don’t instantiate types that conform to this protocol. Rather, dynamic member lookup uses this type as the basis for looking up key paths on Attributed
subtypes when using an Attribute
type parameter. When it also conforms to Codable
, (or Decodable
/Encodable
if the type isn’t fully codable), the Attributed
describes which attributes of an Attributed
support encoding or decoding.
あなたは、このプロトコルに準拠する型それらをインスタンス化しません。というより、動的メンバ検索がこの型を使います、キーパスをAttributed
下位クラス上で検索するための基礎として、Attribute
型パラメータを使う時に。それがまたCodable
に(また型が完全にコード化可能でないならばDecodable
/Encodable
に)準拠する時、Attributed
はAttributed
のどの属性がエンコーディングやデコーディングをサポートするかを記述します。
Attribute owners — typically frameworks — declare a key like the following: 属性所有者 — 概してフレームワーク — は、以下のようなキーを宣言します:
Callers can use these types to get attribute values from attributed strings, but typically you want to reference them by name. Attribute owners enable this by creating one or more structures that conform to Attribute
, in which they provide short names for their attributes that map to the Attributed
type. The following example shows how to do this:
呼び出し側は、これらの型を使って属性値を属性付き文字列から取得できます、しかし概してあなたはそれらを名前によって参照する方がいいでしょう。属性所有者は、これをAttribute
に準拠する1つ以上の構造体を作成することによって可能にします、それでそれらは短い名前をそれらの属性のために提供します、それらはAttributed
型にマップします。以下の例はどのようにこれをするかを示します:
After you extend Attribute
like this, extend Attribute
to allow callers to use dynamic member lookup syntax, like my
.
あなたがAttribute
をこのように拡張した後、Attribute
を拡張して呼び出し側が動的メンバ検索構文を使えるようにしてください、my
のように。
static var name: String
associatedtype Value
var description: String
subscript<T>(T.Type) -> T.Value?
subscript<K>(dynamicMember : KeyPath<AttributeDynamicLookup, K>) -> K.Value?
subscript<S>(dynamicMember : KeyPath<AttributeScopes, S.Type>) -> ScopedAttributeContainer<S>
subscript<K>(dynamicMember : KeyPath<AttributeDynamicLookup, K>) -> AttributeContainer.Builder<K>
static subscript<K>(dynamicMember : KeyPath<AttributeDynamicLookup, K>) -> AttributeContainer.Builder<K>
struct AttributeContainer.Builder