Examples Overview
The examples/ directory contains complete, standalone example programs demonstrating real-world patterns with lz4.zig.
Each example can be executed directly using the Zig build system:
bash
# Run a specific example
zig build run-compress_file
zig build run-streaming_compression
zig build run-reusable_context
zig build run-dictionary_compression
zig build run-error_handling
zig build run-format_introspection
zig build run-bit_level
zig build run-io_pipeline
# Run all registered examples sequentially
zig build run-all-examplesExample Directory
| Example | Command | Description |
|---|---|---|
| Basic Compression | zig build run-alloc_operations | One-shot frame compression and decompression with allocator. |
| Caller Buffers | zig build run-caller_buffer | Zero-allocation compression & decompression into pre-allocated memory. |
| Compression Levels | zig build run-compression_levels | Benchmarking Fast acceleration against High-Compression (HC levels 2..12). |
| File Compression | zig build run-compress_file | Compressing and decompressing disk files with std.Io. |
| Streaming Compression | zig build run-streaming_compression | Explicit std.Io streaming, one-shot APIs, and StreamingCompressor. |
| Streaming Decompression | zig build run-streaming_decompression | Explicit std.Io streaming, one-shot APIs, and chunked pull decompression. |
| Reusable Context | zig build run-reusable_context | Amortizing allocation costs across thousands of operations with reset(). |
| Dictionary Compression | zig build run-dictionary_compression | Compressing small, repetitive JSON and metrics payloads using pre-shared dictionaries. |
| Error Handling | zig build run-error_handling | Robust handling of corrupted frames, invalid tokens, and checksum errors. |
| Format Introspection | zig build run-format_introspection | Inspecting frame headers, magic numbers, block size descriptors, and skippable frames. |
| Bit-Level & Token Encoding | zig build run-bit_level | Understanding LZ4 token structure, byte-level packing, and variable-length integer extensions. |
| I/O Pipeline | zig build run-io_pipeline | Integrating with Zig 0.17 std.Io.Reader and std.Io.Writer. |