mirror of
https://github.com/folke/lazy.nvim.git
synced 2025-04-19 04:46:45 +00:00
feat: rewrite of spec resolving
This commit is contained in:
parent
59b9d3c2b8
commit
7070cf6ade
9 changed files with 558 additions and 429 deletions
|
@ -2,30 +2,26 @@
|
|||
---@alias LazyPluginKind "normal"|"clean"|"disabled"
|
||||
|
||||
---@class LazyPluginState
|
||||
---@field fid number id of the plugin spec fragment
|
||||
---@field fpid? number parent id of the plugin spec fragment
|
||||
---@field fdeps? number[] children ids of the fragment
|
||||
---@field loaded? {[string]:string}|{time:number}
|
||||
---@field installed? boolean
|
||||
---@field tasks? LazyTask[]
|
||||
---@field working? boolean
|
||||
---@field dirty? boolean
|
||||
---@field updated? {from:string, to:string}
|
||||
---@field is_local? boolean
|
||||
---@field updates? {from:GitInfo, to:GitInfo}
|
||||
---@field cloned? boolean
|
||||
---@field outdated? boolean
|
||||
---@field kind? LazyPluginKind
|
||||
---@field dep? boolean True if this plugin is only in the spec as a dependency
|
||||
---@field cond? boolean
|
||||
---@field super? LazyPlugin
|
||||
---@field module? string
|
||||
---@field dir? string Explicit dir or dev set for this plugin
|
||||
---@field rtp_loaded? boolean
|
||||
---@field handlers? LazyPluginHandlers
|
||||
---@field cache? table<string,any>
|
||||
---@field cloned? boolean
|
||||
---@field cond? boolean
|
||||
---@field dep? boolean True if this plugin is only in the spec as a dependency
|
||||
---@field dir? string Explicit dir or dev set for this plugin
|
||||
---@field dirty? boolean
|
||||
---@field frags? number[]
|
||||
---@field handlers? LazyPluginHandlers
|
||||
---@field installed? boolean
|
||||
---@field is_local? boolean
|
||||
---@field kind? LazyPluginKind
|
||||
---@field loaded? {[string]:string}|{time:number}
|
||||
---@field outdated? boolean
|
||||
---@field rocks? LazyRock[]
|
||||
---@field rocks_installed? boolean
|
||||
---@field rtp_loaded? boolean
|
||||
---@field tasks? LazyTask[]
|
||||
---@field updated? {from:string, to:string}
|
||||
---@field updates? {from:GitInfo, to:GitInfo}
|
||||
---@field working? boolean
|
||||
|
||||
---@alias PluginOpts table|fun(self:LazyPlugin, opts:table):table?
|
||||
|
||||
|
@ -66,6 +62,7 @@
|
|||
|
||||
---@class LazyPlugin: LazyPluginBase,LazyPluginHandlers,LazyPluginHooks,LazyPluginRef
|
||||
---@field dependencies? string[]
|
||||
---@field specs? string|string[]|LazyPluginSpec[]
|
||||
---@field _ LazyPluginState
|
||||
|
||||
---@class LazyPluginSpecHandlers
|
||||
|
@ -77,6 +74,7 @@
|
|||
|
||||
---@class LazyPluginSpec: LazyPluginBase,LazyPluginSpecHandlers,LazyPluginHooks,LazyPluginRef
|
||||
---@field dependencies? string|string[]|LazyPluginSpec[]
|
||||
---@field specs? string|string[]|LazyPluginSpec[]
|
||||
|
||||
---@alias LazySpec string|LazyPluginSpec|LazySpecImport|LazySpec[]
|
||||
|
||||
|
@ -85,3 +83,14 @@
|
|||
---@field name? string
|
||||
---@field enabled? boolean|(fun():boolean)
|
||||
---@field cond? boolean|(fun():boolean)
|
||||
|
||||
---@class LazyFragment
|
||||
---@field id number
|
||||
---@field pid? number
|
||||
---@field deps? number[]
|
||||
---@field frags? number[]
|
||||
---@field dep? boolean
|
||||
---@field name string
|
||||
---@field url? string
|
||||
---@field dir? string
|
||||
---@field spec LazyPlugin
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue