class Steep::Server::InteractionWorker

def params_to_snippet(fun)

def params_to_snippet(fun)
  params = []
  index = 1
  fun.required_positionals.each do |param|
    if name = param.name
      params << "${#{index}:#{param.type}}"
    else
      params << "${#{index}:#{param.type}}"
    end
    index += 1
  end
  if fun.rest_positionals
    params << "${#{index}:*#{fun.rest_positionals.type}}"
    index += 1
  end
  fun.trailing_positionals.each do |param|
    if name = param.name
      params << "${#{index}:#{param.type}}"
    else
      params << "${#{index}:#{param.type}}"
    end
    index += 1
  end
  fun.required_keywords.each do |keyword, param|
    if name = param.name
      params << "#{keyword}: ${#{index}:#{name}_}"
    else
      params << "#{keyword}: ${#{index}:#{param.type}_}"
    end
    index += 1
  end
  params.join(", ")
end