YamsYAML 解析器
Yams 是一個(gè)建立在 LibYAML 上的快速的 YAML 解析器。
安裝:構(gòu)建 Yams 需要 Xcode 11.x 或帶有 Swift Package Manager 或 CMake 和 Ninja 的 Swift 5.1+ 工具鏈。
Yams 有三組轉(zhuǎn)換 API:一組用于Codabletypes,另一組用于 Swift Standard Library types,第三組用于 Yams-native 表示。
Codabletypes
- Codable 是Swift 4 中引入的一種編碼和解碼策略, 可以在 YAML 和其他編碼器(如JSONEncoder和PropertyListEncoder )之間輕松轉(zhuǎn)換 。
- 最低的計(jì)算開銷,相當(dāng)于
Yams.Node. - 編碼:
YAMLEncoder.encode(_:)產(chǎn)生一個(gè)YAMLString從類型符合一個(gè)實(shí)例Encodable。 - 解碼:
YAMLDecoder.decode(_:from:)解碼類型符合的實(shí)例Decodable從YAMLString或Data。
import Foundation import Yams struct S: Codable { var p: String } let s = S(p: "test") let encoder = YAMLEncoder() let encodedYAML = try encoder.encode(s) encodedYAML == """ p: test """ let decoder = YAMLDecoder() let decoded = try decoder.decode(S.self, from: encodedYAML) s.p == decoded.p
評論
圖片
表情
