SwiftのProperty Wrappers 機能を使って自作の @-prefixed attributes.を作ってみた
3691 ワード
概要
表題の通りであります。
引用
NSHiper
Sample code
入力文字列値から空白と改行を削除する次のprefixed attributesのサンプルが下記になります。
@propertyWrapper
を利用して、定義します。
import Foundation
@propertyWrapper
struct Trimmed {
private(set) var value: String = ""
var wrappedValue: String {
get { value }
set { value = newValue.trimmingCharacters(in: .whitespacesAndNewlines) }
}
init(wrappedValue initialValue: String) {
self.wrappedValue = initialValue
}
}
使ってみる。
struct Post {
@Trimmed var title: String
@Trimmed var body: String
}
var quine = Post(title: " Swift Property Wrappers ", body: "…")
print(quine.title)// Swift Property Wrappers
こんな感じでいけます。
airbnbがよしなにやっていたので、勉強してみました。
airbnb github
https://github.com/airbnb/ResilientDecoding
コードと解説はNSHiperをそのまま引用しました、詳しい情報はNSHiperやApple (github)を参考にして下さい。
Author And Source
この問題について(SwiftのProperty Wrappers 機能を使って自作の @-prefixed attributes.を作ってみた), 我々は、より多くの情報をここで見つけました https://qiita.com/keisukeYamagishi/items/3cdce9461d2613def10f著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .