class Sorbet::Private::GemGeneratorTracepoint::TracepointSerializer

def gem_from_location(location)

def gem_from_location(location)
  match =
    location&.match(/^.*\/(?:gems\/(?:(?:j?ruby-)?[\d.]+(?:@[^\/]+)?(?:\/bundler)?\/)?|ruby\/[\d.]+\/)gems\/([^\/]+)-([^-\/]+)\//i) || # gem
    location&.match(/^.*\/(ruby)\/([\d.]+)\//) || # ruby stdlib
    location&.match(/^.*\/(jruby)-([\d.]+)\//) || # jvm ruby stdlib
    location&.match(/^.*\/(site_ruby)\/([\d.]+)\//) # rubygems
  if match.nil?
    match_via_bundler_specs(location)
  else
    {
      path: match[0],
      gem: match[1],
      version: match[2],
    }
  end
end