Commit message (Collapse) | Author | Age | |
---|---|---|---|
* | feat(vim.validate): improve fast form and deprecate spec form | Lewis Russell | 2024-10-21 |
| | | | | | | | | | | | | | | Problem: `vim.validate()` takes two forms when it only needs one. Solution: - Teach the fast form all the features of the spec form. - Deprecate the spec form. - General optimizations for both forms. - Add a `message` argument which can be used alongside or in place of the `optional` argument. | ||
* | fix(treesitter): return correct match table in iter_captures() | Lewis Russell | 2024-03-27 |
| | |||
* | feat(lua): add vim.func._memoize | Lewis Russell | 2023-09-20 |
Memoizes a function, using a custom function to hash the arguments. Private for now until: - There are other places in the codebase that could benefit from this (e.g. LSP), but might require other changes to accommodate. - Invalidation of the cache needs to be controllable. Using weak tables is an acceptable invalidation policy, but it shouldn't be the only one. - I don't think the story around `hash_fn` is completely thought out. We may be able to have a good default hash_fn by hashing each argument, so basically a better 'concat'. |