diff --git a/lua/oil/adapters/trash/freedesktop.lua b/lua/oil/adapters/trash/freedesktop.lua index c669730..10c0749 100644 --- a/lua/oil/adapters/trash/freedesktop.lua +++ b/lua/oil/adapters/trash/freedesktop.lua @@ -447,7 +447,7 @@ M.render_action = function(action) local entry = assert(cache.get_entry_by_url(action.url)) local meta = entry[FIELD_META] ---@type oil.TrashInfo - local trash_info = meta and meta.trash_info + local trash_info = assert(meta).trash_info local short_path = fs.shorten_path(trash_info.original_path) return string.format(" PURGE %s", short_path) elseif action.type == "move" then @@ -561,7 +561,7 @@ M.perform_action = function(action, cb) local entry = assert(cache.get_entry_by_url(action.url)) local meta = entry[FIELD_META] ---@type oil.TrashInfo - local trash_info = meta and meta.trash_info + local trash_info = assert(meta).trash_info purge(trash_info, cb) elseif action.type == "move" then local src_adapter = assert(config.get_adapter_by_scheme(action.src_url)) @@ -576,7 +576,7 @@ M.perform_action = function(action, cb) local entry = assert(cache.get_entry_by_url(action.src_url)) local meta = entry[FIELD_META] ---@type oil.TrashInfo - local trash_info = meta and meta.trash_info + local trash_info = assert(meta).trash_info fs.recursive_move(action.entry_type, trash_info.trash_file, dest_path, function(err) if err then return cb(err) @@ -607,7 +607,7 @@ M.perform_action = function(action, cb) local entry = assert(cache.get_entry_by_url(action.src_url)) local meta = entry[FIELD_META] ---@type oil.TrashInfo - local trash_info = meta and meta.trash_info + local trash_info = assert(meta).trash_info fs.recursive_copy(action.entry_type, trash_info.trash_file, dest_path, cb) else error("Must be moving files into or out of trash") diff --git a/lua/oil/adapters/trash/windows.lua b/lua/oil/adapters/trash/windows.lua index dba1d04..f7634e1 100644 --- a/lua/oil/adapters/trash/windows.lua +++ b/lua/oil/adapters/trash/windows.lua @@ -266,7 +266,7 @@ M.render_action = function(action) local entry = assert(cache.get_entry_by_url(action.url)) local meta = entry[FIELD_META] ---@type oil.WindowsTrashInfo - local trash_info = meta and meta.trash_info + local trash_info = assert(meta).trash_info local short_path = fs.shorten_path(trash_info.original_path) return string.format(" PURGE %s", short_path) elseif action.type == "move" then diff --git a/lua/oil/columns.lua b/lua/oil/columns.lua index d531a7c..e3a4395 100644 --- a/lua/oil/columns.lua +++ b/lua/oil/columns.lua @@ -200,7 +200,7 @@ local function is_entry_directory(entry) return true elseif type == "link" then local meta = entry[FIELD_META] - return meta and meta.link_stat and meta.link_stat.type == "directory" + return (meta and meta.link_stat and meta.link_stat.type == "directory") == true else return false end diff --git a/lua/oil/constants.lua b/lua/oil/constants.lua index e1ef56b..3f5a38a 100644 --- a/lua/oil/constants.lua +++ b/lua/oil/constants.lua @@ -2,7 +2,7 @@ local M = {} ---Store entries as a list-like table for maximum space efficiency and retrieval speed. ---We use the constants below to index into the table. ----@alias oil.InternalEntry any[] +---@alias oil.InternalEntry {[1]: integer, [2]: string, [3]: oil.EntryType, [4]: nil|table} -- Indexes into oil.InternalEntry M.FIELD_ID = 1