Sha256: 71bb1e4b5e2321f3be1b48da63ae528084350c2d9b9f6e73009563d5b9d26e61

Contents?: true

Size: 599 Bytes

Versions: 23

Compression:

Stored size: 599 Bytes

Contents

# 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
    open path, 'wb', &block
  end

  def with_read_io &block
    open path, 'rb', &block
  end

end

Version data entries

23 entries across 23 versions & 2 rubygems

Version Path
rubygems-update-2.7.4 lib/rubygems/package/file_source.rb
rubygems-update-2.7.4.pre1 lib/rubygems/package/file_source.rb
rubygems-update-2.7.3 lib/rubygems/package/file_source.rb
rubygems-update-2.7.2 lib/rubygems/package/file_source.rb
rubygems-update-2.7.1 lib/rubygems/package/file_source.rb
rubygems-update-2.7.0 lib/rubygems/package/file_source.rb
rubygems-update-2.6.14 lib/rubygems/package/file_source.rb
rubygems-update-2.6.13 lib/rubygems/package/file_source.rb
rubygems-update-2.6.12 lib/rubygems/package/file_source.rb
rubygems-update-2.6.11 lib/rubygems/package/file_source.rb
rubygems-update-2.6.10 lib/rubygems/package/file_source.rb
rubygems-update-2.6.9 lib/rubygems/package/file_source.rb
ruby-compiler-0.1.1 vendor/ruby/lib/rubygems/package/file_source.rb
rubygems-update-2.6.8 lib/rubygems/package/file_source.rb
rubygems-update-2.6.7 lib/rubygems/package/file_source.rb
rubygems-update-2.6.6 lib/rubygems/package/file_source.rb
rubygems-update-2.6.5 lib/rubygems/package/file_source.rb
rubygems-update-2.6.4 lib/rubygems/package/file_source.rb
rubygems-update-2.6.3 lib/rubygems/package/file_source.rb
rubygems-update-2.6.2 lib/rubygems/package/file_source.rb