跳到主要内容
版本:0.16

Swift 序列化指南

Apache Fory Swift 提供高性能对象图序列化,具备强类型安全、基于宏的代码生成、Schema 演化和跨语言兼容能力。

为什么选择 Fory Swift?

  • 面向 Swift 值类型和引用类型的高速二进制序列化
  • 使用 @ForyObject 宏实现零样板模型序列化
  • 通过 xlang 与 Java、Rust、Go、Python 等运行时进行跨语言互操作
  • 提供跨版本 Schema 演化的兼容模式
  • 内置支持动态值(AnyAnyObjectany SerializerAnyHashable
  • 支持共享 / 循环对象图的引用跟踪,并兼容类上的弱引用

安装

从 Apache Fory GitHub 仓库引入 Fory Swift:

dependencies: [
.package(url: "https://github.com/apache/fory.git", exact: "$version")
],
targets: [
.target(
name: "MyApp",
dependencies: [
.product(name: "Fory", package: "fory")
]
)
]

指南目录

快速示例

import Fory

@ForyObject
struct User: Equatable {
var name: String = ""
var age: Int32 = 0
}

let fory = Fory()
fory.register(User.self, id: 1)

let input = User(name: "alice", age: 30)
let data = try fory.serialize(input)
let output: User = try fory.deserialize(data)

assert(input == output)