diff options
author | Lewis Russell <lewis6991@gmail.com> | 2023-03-06 10:57:14 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-03-06 10:57:14 +0000 |
commit | f9a46391ab5961fe6c6b7d1efdc96befdd495c11 (patch) | |
tree | cee7f3f2bd2e34c169f9dd6c4dae0b40dd47072a /runtime/lua/vim/treesitter/_range.lua | |
parent | b0620ffe5a2e16d6d52e803978c90d0ffb030908 (diff) | |
download | rneovim-f9a46391ab5961fe6c6b7d1efdc96befdd495c11.tar.gz rneovim-f9a46391ab5961fe6c6b7d1efdc96befdd495c11.tar.bz2 rneovim-f9a46391ab5961fe6c6b7d1efdc96befdd495c11.zip |
refactor(treesitter): simplify some range functions
Diffstat (limited to 'runtime/lua/vim/treesitter/_range.lua')
-rw-r--r-- | runtime/lua/vim/treesitter/_range.lua | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/runtime/lua/vim/treesitter/_range.lua b/runtime/lua/vim/treesitter/_range.lua index 8decd3a1fd..bec24a23a5 100644 --- a/runtime/lua/vim/treesitter/_range.lua +++ b/runtime/lua/vim/treesitter/_range.lua @@ -54,6 +54,26 @@ M.cmp_pos = { setmetatable(M.cmp_pos, { __call = cmp_pos }) ---@private +---Check if a variable is a valid range object +---@param r any +---@return boolean +function M.validate(r) + if type(r) ~= 'table' or #r ~= 6 and #r ~= 4 then + return false + end + + for _, e in + ipairs(r --[[@as any[] ]]) + do + if type(e) ~= 'number' then + return false + end + end + + return true +end + +---@private ---@param r1 Range4|Range6 ---@param r2 Range4|Range6 ---@return boolean |