neovim

Neovim text editor
git clone https://git.dasho.dev/neovim.git
Log | Files | Refs | README

misc.lua (2805B)


      1 ---@meta
      2 -- luacheck: no unused args
      3 error('Cannot require a meta file')
      4 
      5 ---@alias TSLoggerCallback fun(logtype: 'parse'|'lex', msg: string)
      6 
      7 ---@class TSParser: userdata
      8 ---@field parse fun(self: TSParser, tree: TSTree?, source: integer|string, include_bytes: boolean, timeout_ns: integer?): TSTree?, (Range4|Range6)[]
      9 ---@field reset fun(self: TSParser)
     10 ---@field included_ranges fun(self: TSParser, include_bytes: boolean?): integer[]
     11 ---@field set_included_ranges fun(self: TSParser, ranges: (Range6|TSNode)[])
     12 ---@field _set_logger fun(self: TSParser, lex: boolean, parse: boolean, cb: TSLoggerCallback)
     13 ---@field _logger fun(self: TSParser): TSLoggerCallback
     14 
     15 ---@class (exact) TSQueryInfo
     16 ---@field captures string[]
     17 ---@field patterns table<integer, (integer|string)[][]>
     18 ---
     19 ---@class TSLangMetadata
     20 ---@field major_version integer
     21 ---@field minor_version integer
     22 ---@field patch_version integer
     23 ---
     24 ---@class TSLangInfo
     25 ---@field abi_version integer
     26 ---@field metadata? TSLangMetadata  -- ABI 15 only
     27 ---@field state_count integer
     28 ---@field fields string[]
     29 ---@field symbols table<string,boolean>
     30 ---@field supertypes table<string,string[]>
     31 ---@field _wasm boolean
     32 
     33 --- @param lang string
     34 --- @return TSLangInfo
     35 vim._ts_inspect_language = function(lang) end
     36 
     37 ---@return integer
     38 vim._ts_get_language_version = function() end
     39 
     40 --- @param path string
     41 --- @param lang string
     42 --- @param symbol_name? string
     43 vim._ts_add_language_from_object = function(path, lang, symbol_name) end
     44 
     45 --- @param path string
     46 --- @param lang string
     47 vim._ts_add_language_from_wasm = function(path, lang) end
     48 
     49 ---@return integer
     50 vim._ts_get_minimum_language_version = function() end
     51 
     52 ---@param lang string Language to use for the query
     53 ---@param query string Query string in s-expr syntax
     54 ---@return TSQuery
     55 vim._ts_parse_query = function(lang, query) end
     56 
     57 ---@param lang string
     58 ---@return TSParser
     59 vim._create_ts_parser = function(lang) end
     60 
     61 --- @class TSQueryMatch: userdata
     62 --- @field captures fun(self: TSQueryMatch): table<integer,TSNode[]>
     63 local TSQueryMatch = {} -- luacheck: no unused
     64 
     65 --- @return integer match_id
     66 --- @return integer pattern_index
     67 function TSQueryMatch:info() end
     68 
     69 --- @class TSQueryCursor: userdata
     70 --- @field remove_match fun(self: TSQueryCursor, id: integer)
     71 local TSQueryCursor = {} -- luacheck: no unused
     72 
     73 --- @return integer capture
     74 --- @return TSNode captured_node
     75 --- @return TSQueryMatch match
     76 function TSQueryCursor:next_capture() end
     77 
     78 --- @return TSQueryMatch match
     79 function TSQueryCursor:next_match() end
     80 
     81 --- @param node TSNode
     82 --- @param query TSQuery
     83 --- @param opts? { start_row: integer, start_col: integer, end_row: integer, end_col: integer, max_start_depth?: integer, match_limit?: integer }
     84 --- @return TSQueryCursor
     85 function vim._create_ts_querycursor(node, query, opts) end