feat: add zig bindings

This commit is contained in:
2025-10-17 21:56:38 +08:00
parent 65da635196
commit 2b8388e276
4 changed files with 120 additions and 0 deletions

5
bindings/zig/root.zig generated Normal file
View File

@@ -0,0 +1,5 @@
extern fn tree_sitter_emm() callconv(.c) *const anyopaque;
pub fn language() *const anyopaque {
return tree_sitter_emm();
}

17
bindings/zig/test.zig generated Normal file
View File

@@ -0,0 +1,17 @@
const testing = @import("std").testing;
const ts = @import("tree_sitter");
const root = @import("tree_sitter_emm");
const Language = ts.Language;
const Parser = ts.Parser;
test "can load grammar" {
const parser = Parser.create();
defer parser.destroy();
const lang: *const ts.Language = @ptrCast(root.language());
defer lang.destroy();
try testing.expectEqual(void{}, parser.setLanguage(lang));
try testing.expectEqual(lang, parser.getLanguage());
}