UNPKG

fish-lsp

Version:

LSP implementation for fish/fish-shell

23 lines (22 loc) 1 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.isForVariableDefinitionName = isForVariableDefinitionName; exports.processForDefinition = processForDefinition; const symbol_1 = require("./symbol"); const definition_scope_1 = require("../utils/definition-scope"); function isForVariableDefinitionName(node) { if (node.parent && node.parent.type === 'for_statement') { return !!node.parent.firstNamedChild && node.parent.firstNamedChild.type === 'variable_name' && node.parent.firstNamedChild.equals(node); } return false; } function processForDefinition(document, node, children = []) { const modifier = 'local'; const definitionNode = node.firstNamedChild; const definitionScope = definition_scope_1.DefinitionScope.create(node, modifier); return [ symbol_1.FishSymbol.create(definitionNode.text, node, definitionNode, 'FOR', document, document.uri, node.text, definitionScope, children), ]; }