BinaryCodable
Swift Codable-like interfaces for binary representations.
Install / Use
/learn @jverkoey/BinaryCodableREADME
Binary Codable
Binary Codable provides Swift Codable-like interfaces for converting types to and from binary representations.
Binary Codable is optimized for reading and writing blocks of binary data as a stream of bytes. This makes Binary Codable useful for network protocols, binary file formats, and other forms of tightly-packed binary information.
This is not an official Google product.
Features
- [x] Encode from Swift types to
Data. - [x] Decode from
Datato Swift types. - [x] Efficiently encode/decode large blocks of arbitrary data.
- [x] Lazy decoding (read bytes from a source only as they're needed).
- [x] Encode and decode fixed-width integer types.
- [x] Encode and decode strings with or without terminators.
- [x] Cap decoding containers to a maximum length.
Known usage in the wild
- BinaryCookies: Read and write Apple's .binarycookies files.
- MySqlConnector: A pure Swift implementation of the MySql client/server protocol.
Supported technologies
- iOS 13.0+ / macOS 10.15+
- Xcode 11.5+
- Ubuntu 16.04
- Swift 5.2
License
BinaryCodable is released under the Apache 2.0 license. See LICENSE for more details.
