Skip to content

Commit

Permalink
Remove vim.validate
Browse files Browse the repository at this point in the history
  • Loading branch information
notomo committed Oct 22, 2024
1 parent c999dd1 commit 88f09cb
Show file tree
Hide file tree
Showing 9 changed files with 25 additions and 28 deletions.
3 changes: 2 additions & 1 deletion lua/piemenu/command.lua
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,9 @@ local View = require("piemenu.view")

local M = {}

--- @param name string
--- @param raw_setting PiemenuSetting?
function M.start(name, raw_setting)
vim.validate({ name = { name, "string" }, setting = { raw_setting, "table", true } })
raw_setting = raw_setting or {}

local already = View.find(name)
Expand Down
19 changes: 9 additions & 10 deletions lua/piemenu/core/menu.lua
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,9 @@ local Setting = require("piemenu.core.setting")
local Menu = {}
Menu.__index = Menu

--- @param action fun()
--- @param text string
function Menu.new(action, text)
vim.validate({ action = { action, "function" }, text = { text, "string" } })
local tbl = { _action = action, _text = vim.split(text, "\n", { plain = true })[1] }
return setmetatable(tbl, Menu)
end
Expand Down Expand Up @@ -39,19 +40,17 @@ end

local Menus = {}

--- @param name string
--- @param raw_menus table
--- @param setting table
function Menus.new(name, raw_menus, setting)
vim.validate({
name = { name, "string" },
raw_menus = { raw_menus, "table" },
setting = { setting, "table" },
})
local tbl = { name = name, setting = setting, _menus = raw_menus }
return setmetatable(tbl, Menus)
end

--- @param name string
--- @param raw_setting table
function Menus.parse(name, raw_setting)
vim.validate({ name = { name, "string" }, setting = { raw_setting, "table" } })

local raw_menus = {}
for _, menu in ipairs(raw_setting.menus or {}) do
if vim.tbl_isempty(menu) then
Expand Down Expand Up @@ -94,8 +93,8 @@ end

local _menus = {}

--- @param name string
function Menus.find(name)
vim.validate({ name = { name, "string" } })
local menus = _menus[name]
if not menus or menus:is_empty() then
return ("no menus for `%s`"):format(name)
Expand All @@ -112,8 +111,8 @@ function Menus.register(name, setting)
_menus[name] = menus
end

--- @param name string
function Menus.clear(name)
vim.validate({ name = { name, "string" } })
_menus[name] = nil
end

Expand Down
3 changes: 1 addition & 2 deletions lua/piemenu/core/setting.lua
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,8 @@ Setting.default = {
position = Setting.nil_value,
}

--- @param raw_setting PiemenuSetting
function Setting.new(raw_setting)
vim.validate({ raw_setting = { raw_setting, "table" } })

local default = Setting.default_values()
local data = vim.tbl_deep_extend("force", default, raw_setting)

Expand Down
2 changes: 1 addition & 1 deletion lua/piemenu/lib/cursor.lua
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
local M = {}

--- @param window_id integer?
function M.global_position(window_id)
vim.validate({ window_id = { window_id, "number", true } })
window_id = window_id or vim.api.nvim_get_current_win()
local win_pos = vim.api.nvim_win_get_position(window_id)
return { win_pos[1] + vim.fn.winline() - 1, win_pos[2] + vim.fn.wincol() }
Expand Down
6 changes: 3 additions & 3 deletions lua/piemenu/lib/list.lua
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@ function M.sum(items)
return all
end

--- @param items any[]
function M.tri_circular(items)
vim.validate({ items = { items, "table" } })
local list = {}
for i, item in ipairs(items) do
local prev_item = items[i - 1] or items[#items]
Expand All @@ -18,9 +18,9 @@ function M.tri_circular(items)
end
return list
end

--- @param items any[]
--- @param is_start fun(any):boolean
function M.circular_shift(items, is_start)
vim.validate({ items = { items, "table" }, is_start = { is_start, "function" } })
local start_index = 1
for i, item in ipairs(items) do
if is_start(item) then
Expand Down
4 changes: 1 addition & 3 deletions lua/piemenu/lib/validate.lua
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
local M = {}

function M.greater_than(n, value)
vim.validate({ n = { n, "number" } })
return {
value,
function(x)
Expand All @@ -12,7 +11,6 @@ function M.greater_than(n, value)
end

function M.equal_or_greater_than(n, value)
vim.validate({ n = { n, "number" } })
return {
value,
function(x)
Expand Down Expand Up @@ -52,7 +50,7 @@ end
function M.validate(tbl)
local errs = {}
for key, value in pairs(tbl) do
local ok, result = pcall(vim.validate, { [key] = value })
local ok, result = pcall(vim.validate, key, unpack(value))
if not ok then
local msg = vim.split(tostring(result), "\n")[1]
if type(value[1]) == "table" then
Expand Down
4 changes: 2 additions & 2 deletions lua/piemenu/view/animation.lua
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,9 @@ local hrtime = uv.hrtime
local Animation = {}
Animation.__index = Animation

--- @param items table[]
--- @param duration number
function Animation.new(items, duration)
vim.validate({ items = { items, "table" }, duration = { duration, "number" } })

local on_tick = function()
local ok = true
for _, item in ipairs(items) do
Expand Down
4 changes: 2 additions & 2 deletions lua/piemenu/view/circle.lua
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,9 @@ local listlib = require("piemenu.lib.list")
local CircleTiles = {}
CircleTiles.__index = CircleTiles

--- @param defined_menus table
--- @param view_setting table
function CircleTiles.open(defined_menus, view_setting)
vim.validate({ defined_menus = { defined_menus, "table" }, view_setting = { view_setting, "table" } })

local start_angle = view_setting.start_angle
local end_angle = view_setting.end_angle

Expand Down
8 changes: 4 additions & 4 deletions lua/piemenu/view/init.lua
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,9 @@ local views = {}
local View = {}
View.__index = View

--- @param name string
--- @param raw_setting PiemenuSetting
function View.open(name, raw_setting)
vim.validate({ name = { name, "string" }, raw_setting = { raw_setting, "table" } })

local menus
if not raw_setting.menus then
menus = Menus.find(name)
Expand Down Expand Up @@ -87,8 +87,8 @@ function View.close(self)
views[self._background.window_id] = nil
end

--- @param window_id integer
function View.get(window_id)
vim.validate({ window_id = { window_id, "number" } })
return views[window_id]
end

Expand All @@ -101,8 +101,8 @@ function View.current()
return view
end

--- @param name string
function View.find(name)
vim.validate({ name = { name, "string" } })
for _, view in pairs(views) do
if view.name == name then
return view
Expand Down

0 comments on commit 88f09cb

Please sign in to comment.