Compression provides algorithms for compressing and decompressing data, including LZFSE, LZ4, ZLIB, and LZMA, selectable through the Algorithm enumeration. It wraps the lower-level C compression API, exposing types such as compression_stream and compression_stream_operation for streaming work, alongside compression_status for tracking results. For Swift code, the InputFilter and OutputFilter classes let you process data through a FilterOperation, surfacing failures as a FilterError. These services are available on iOS, macOS, tvOS, watchOS, and visionOS.
Swift Compression Filters 4
Stream data through a compression or decompression filter using high-level Swift classes.
- ClInputFilteriOS 13+A class that reads and decompresses, or compresses, data as it is pulled from a source.
- ClOutputFilteriOS 13+A class that compresses, or decompresses, data and writes the result to a destination.
- EnFilterOperationiOS 13+Compression filter direction of operation, compress/decompress
- EnFilterErroriOS 13+Compression errors
Algorithms 2
Select the compression algorithm used to encode and decode data.
- EnAlgorithmiOS 13+Compression algorithms, wraps the C API constants.
- Stcompression_algorithm@enum compression_algorithm
Low-Level Streaming 4
Drive the underlying C compression API for incremental, buffered compression work.
- Stcompression_streamA structure that holds the state for an incremental compression or decompression operation.
- Stcompression_stream_operationA type that specifies whether a compression stream encodes or decodes data.
- Stcompression_stream_flagsA type that provides flags controlling how a compression stream processes data.
- Stcompression_statusA type that reports the result of a low-level compression stream operation.