PHP 8.2.31
Preview: file_source.rb Size: 610 B
/proc/thread-self/root/opt/alt/ruby40/share/rubygems/rubygems/package/file_source.rb

# frozen_string_literal: true

##
# The primary source of gems is a file on disk, including all usages
# internal to rubygems.
#
# This is a private class, do not depend on it directly. Instead, pass a path
# object to `Gem::Package.new`.

class Gem::Package::FileSource < Gem::Package::Source # :nodoc: all
  attr_reader :path

  def initialize(path)
    @path = path
  end

  def start
    @start ||= File.read path, 20
  end

  def present?
    File.exist? path
  end

  def with_write_io(&block)
    File.open path, "wb", &block
  end

  def with_read_io(&block)
    File.open path, "rb", &block
  end
end

Directory Contents

Dirs: 1 × Files: 8

Name Size Perms Modified Actions
- drwxr-xr-x 2026-06-09 07:03:28
Edit Download
1.33 KB lrw-r--r-- 2026-05-21 12:15:20
Edit Download
610 B lrw-r--r-- 2026-05-21 12:15:20
Edit Download
814 B lrw-r--r-- 2026-05-21 12:15:20
Edit Download
3.62 KB lrw-r--r-- 2026-05-21 12:15:20
Edit Download
72 B lrw-r--r-- 2026-05-21 12:15:20
Edit Download
6.40 KB lrw-r--r-- 2026-05-21 12:15:20
Edit Download
1.95 KB lrw-r--r-- 2026-05-21 12:15:20
Edit Download
7.59 KB lrw-r--r-- 2026-05-21 12:15:20
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).