fastfilter
Binary fuse & xor filters for Zig (faster and smaller than bloom filters)
Getting started
Create a build.zig.zon in your project (replace LATEST_COMMIT with the latest commit hash):
.{
.name = "mypkg",
.version = "0.1.0",
.dependencies = .{
.fastfilter = .{
.url = "https://pkg.machengine.org/fastfilter/LATEST_COMMIT.tar.gz",
},
},
}
Run zig build in your project, and the compiler will instruct you to add a .hash = "..." field next to .url:
note: expected .hash = "12209838fcfb7a77d2d6931efdc7448c033a1b7dad11d082c94bbeeba9d1038cd311",
Then use the dependency in your build.zig:
pub fn build(b: *std.Build) void {
...
exe.addModule("fastfilter", b.dependency("fastfilter", .{
.target = target,
.optimize = optimize,
}).module("fastfilter"));
}
You can now use it in your src/main.zig file:
const fastfilter = @import("fastfilter");
Ran into trouble?
Triple-check you followed the build.zig.zon instructions correctly, it’s easy to mess that part up.
Feel free to join the Mach Discord community for help.
