feat(treesitter)!: use return values in language.add()

Problem: No clear way to check whether parsers are available for a given
language.

Solution: Make `language.add()` return `true` if a parser was
successfully added and `nil` otherwise. Use explicit `assert` instead of
relying on thrown errors.
This commit is contained in:
Christian Clason
2024-09-15 14:19:08 +02:00
parent 041d98fe8d
commit 99e0facf3a
6 changed files with 49 additions and 32 deletions

View File

@ -247,8 +247,7 @@ end)
---
---@see [vim.treesitter.query.get()]
M.parse = memoize('concat-2', function(lang, query)
language.add(lang)
assert(language.add(lang))
local ts_query = vim._ts_parse_query(lang, query)
return Query.new(lang, ts_query)
end)