SLIP 是一个轻量级的 SLIP 数据包处理库,规范见 RFC 1055。它定义了编码和解码,并处理双端 SLIP 编码的数据包。
SLIP 可以作为 Swift Package Manager 包使用。您可以从 Xcode 的“文件”菜单中的“Swift Packages”选项将其添加到您的项目中。
.package(url: "https://github.com/mennabah/SLIP.git", from: "1.0.0")
SLIP 定义了一个全局的、单一结构体访问,用于访问包的功能。首先创建一个实例:
let packet = SLIP.Packet(<#T##YourData#>)
然后使用该实例来编码数据包:
let encoded = packet.encoded
或者解码数据包:
let decoded = try? packet.decoded
与 RFC 1055 中描述的参考实现(选择基本上忽略协议错误)相反,SLIP 包中的 decoded
方法使用 SLIPError.protocolError
错误来指示协议错误,即具有无效字节序列的 SLIP 数据包。
您可以选择通过在 Packet(_:ignoresProtocolError:)
初始化器中指定 ignoresError
来忽略解码错误。