module Solargraph::Parser::ParserGem::NodeMethods

def convert_hash node

Returns:
  • (Hash{Parser::AST::Node => Chain}) -

Parameters:
  • node (Parser::AST::Node) --
def convert_hash node
  return {} unless Parser.is_ast_node?(node)
  return convert_hash(node.children[0]) if node.type == :kwsplat
  return convert_hash(node.children[0]) if Parser.is_ast_node?(node.children[0]) && node.children[0].type == :kwsplat
  return {} unless node.type == :hash
  result = {}
  node.children.each do |pair|
    result[pair.children[0].children[0]] = Solargraph::Parser.chain(pair.children[1])
  end
  result
end