class RubyLsp::Document

def cache_fetch(request_name, &block)

def cache_fetch(request_name, &block)
  cached = @cache[request_name]
  return cached if cached
  result = block.call(self)
  @cache[request_name] = result
  result
end