mirror of
https://github.com/neovim/neovim.git
synced 2025-02-25 18:55:25 -06:00
refactor(treesitter): {start,stop} are optional in Query:iter_* methods
Document that the `start` and `stop` parameters in `Query:iter_captures()` and `Query:iter_matches()` are optional. The tree-sitter lib has been bumped up to 0.20.9, so we also no longer need "Requires treesitter >= 0.20.9".
This commit is contained in:
parent
800134ea5e
commit
d0e9e36a78
@ -1086,8 +1086,10 @@ Query:iter_captures({node}, {source}, {start}, {stop})
|
||||
• {node} (`TSNode`) under which the search will occur
|
||||
• {source} (`integer|string`) Source buffer or string to extract text
|
||||
from
|
||||
• {start} (`integer`) Starting line for the search
|
||||
• {stop} (`integer`) Stopping line for the search (end-exclusive)
|
||||
• {start} (`integer?`) Starting line for the search. Defaults to
|
||||
`node:start()`.
|
||||
• {stop} (`integer?`) Stopping line for the search (end-exclusive).
|
||||
Defaults to `node:end_()`.
|
||||
|
||||
Return: ~
|
||||
(`fun(end_line: integer?): integer, TSNode, TSMetadata`) capture id,
|
||||
@ -1119,13 +1121,14 @@ Query:iter_matches({node}, {source}, {start}, {stop}, {opts})
|
||||
Parameters: ~
|
||||
• {node} (`TSNode`) under which the search will occur
|
||||
• {source} (`integer|string`) Source buffer or string to search
|
||||
• {start} (`integer`) Starting line for the search
|
||||
• {stop} (`integer`) Stopping line for the search (end-exclusive)
|
||||
• {opts} (`table?`) Options:
|
||||
• {start} (`integer?`) Starting line for the search. Defaults to
|
||||
`node:start()`.
|
||||
• {stop} (`integer?`) Stopping line for the search (end-exclusive).
|
||||
Defaults to `node:end_()`.
|
||||
• {opts} (`table?`) Optional keyword arguments:
|
||||
• max_start_depth (integer) if non-zero, sets the maximum
|
||||
start depth for each match. This is used to prevent
|
||||
traversing too deep into a tree. Requires treesitter >=
|
||||
0.20.9.
|
||||
traversing too deep into a tree.
|
||||
|
||||
Return: ~
|
||||
(`fun(): integer, table<integer,TSNode>, table`) pattern id, match,
|
||||
|
@ -672,14 +672,16 @@ end
|
||||
--- Returns the start and stop value if set else the node's range.
|
||||
-- When the node's range is used, the stop is incremented by 1
|
||||
-- to make the search inclusive.
|
||||
---@param start integer
|
||||
---@param stop integer
|
||||
---@param start integer|nil
|
||||
---@param stop integer|nil
|
||||
---@param node TSNode
|
||||
---@return integer, integer
|
||||
local function value_or_node_range(start, stop, node)
|
||||
if start == nil and stop == nil then
|
||||
local node_start, _, node_stop, _ = node:range()
|
||||
return node_start, node_stop + 1 -- Make stop inclusive
|
||||
if start == nil then
|
||||
start = node:start()
|
||||
end
|
||||
if stop == nil then
|
||||
stop = node:end_() + 1 -- Make stop inclusive
|
||||
end
|
||||
|
||||
return start, stop
|
||||
@ -710,8 +712,8 @@ end
|
||||
---
|
||||
---@param node TSNode under which the search will occur
|
||||
---@param source (integer|string) Source buffer or string to extract text from
|
||||
---@param start integer Starting line for the search
|
||||
---@param stop integer Stopping line for the search (end-exclusive)
|
||||
---@param start? integer Starting line for the search. Defaults to `node:start()`.
|
||||
---@param stop? integer Stopping line for the search (end-exclusive). Defaults to `node:end_()`.
|
||||
---
|
||||
---@return (fun(end_line: integer|nil): integer, TSNode, TSMetadata):
|
||||
--- capture id, capture node, metadata
|
||||
@ -769,12 +771,11 @@ end
|
||||
---
|
||||
---@param node TSNode under which the search will occur
|
||||
---@param source (integer|string) Source buffer or string to search
|
||||
---@param start integer Starting line for the search
|
||||
---@param stop integer Stopping line for the search (end-exclusive)
|
||||
---@param opts table|nil Options:
|
||||
---@param start? integer Starting line for the search. Defaults to `node:start()`.
|
||||
---@param stop? integer Stopping line for the search (end-exclusive). Defaults to `node:end_()`.
|
||||
---@param opts? table Optional keyword arguments:
|
||||
--- - max_start_depth (integer) if non-zero, sets the maximum start depth
|
||||
--- for each match. This is used to prevent traversing too deep into a tree.
|
||||
--- Requires treesitter >= 0.20.9.
|
||||
---
|
||||
---@return (fun(): integer, table<integer,TSNode>, table): pattern id, match, metadata
|
||||
function Query:iter_matches(node, source, start, stop, opts)
|
||||
|
Loading…
Reference in New Issue
Block a user