I have created a Swift package (
https://github.com/daspoon/tree-sitter-kit) enabling tree-sitter parsers to be written in Swift; specifically, as an array of production rules which map symbol types to pairings of syntax expression and type constructor. A member macro derives a tree-sitter grammar and embeds the generated parser in its expansion.
This project is a work in progress, and I will be grateful for any feedback.
Thanks,
Dave