Merge pull request #14418 from DerekStride/treesitter-set-directive

[RDY] tree-sitter ensure there is a nested table allocated for `#set!`
This commit is contained in:
Thomas Vigouroux
2021-05-03 21:41:39 +02:00
committed by GitHub
2 changed files with 55 additions and 1 deletions

View File

@@ -275,7 +275,11 @@ local directive_handlers = {
["set!"] = function(_, _, _, pred, metadata)
if #pred == 4 then
-- (#set! @capture "key" "value")
metadata[pred[2]][pred[3]] = pred[4]
local capture = pred[2]
if not metadata[capture] then
metadata[capture] = {}
end
metadata[capture][pred[3]] = pred[4]
else
-- (#set! "key" "value")
metadata[pred[2]] = pred[3]