- Reactive Programming with Swift 4
- Navdeep Singh
- 206字
- 2021-06-24 18:58:00
Smart key paths
Another important change introduced by Swift 4 is that of smarter key paths. Swift key paths are strongly typed and enforce a compile time check and remove a common runtime error.
You write a key path by starting with a backslash: `\Book.title`. Every type automatically gets a `[keyPath: …]` subscript to get or set the value at the specified key path:
struct Book {
var title = ""
let price : Float
}
let titleKeyPath = \Book.name
let mathsBook = Book(name: "Algebra", price: 10.50)
mathsBook[keyPath: titleKeyPath]
The value in the earlier mentioned keyPath is "Algebra".
The titleKeyPath object defines a citation to the name property. Then, it can be used as a subscript on that object. You can store and manipulate key paths. For example, you can append additional segments to a key path to drill down further. Key paths are composed of a root, and then you can drill down by following a combination of properties and subscripts.
If you change the variable of mathsBook from let to var, a specific property can also be modified through the keyPath subscript syntax:
mathsBook[keyPath: titleKeyPath] = "Trigonometry"
let newTitle = mathsBook[keyPath: titleKeyPath]
The value in the mentioned keyPath is "Trigonometry".
- 程序員面試白皮書
- Java程序設計與計算思維
- Python應用輕松入門
- Visual FoxPro程序設計
- Salesforce Reporting and Dashboards
- Learning Laravel's Eloquent
- Programming with CodeIgniterMVC
- 輕松上手2D游戲開發:Unity入門
- 深入解析Java編譯器:源碼剖析與實例詳解
- LabVIEW數據采集
- Getting Started with hapi.js
- Koa與Node.js開發實戰
- Zend Framework 2 Cookbook
- AngularJS by Example
- VBA Automation for Excel 2019 Cookbook