Class: RBS::Collection::Sources::Rubygems
- Inherits:
-
Object
- Object
- RBS::Collection::Sources::Rubygems
- Includes:
- Base, Singleton
- Defined in:
- lib/rbs/collection/sources/rubygems.rb,
sig/collection/sources.rbs
Overview
sig/ directory
Class Method Summary collapse
-
.instance ⇒ instance
polyfill of singleton module.
Instance Method Summary collapse
- #gem_sig_path(name, version) ⇒ [Gem::Specification, Pathname]?
- #has?(name, version) ⇒ Boolean
- #install(dest:, name:, version:, stdout:) ⇒ void
- #manifest_of(name, version) ⇒ manifest_entry?
- #to_lockfile ⇒ source_entry
- #versions(name) ⇒ Array[String]
Methods included from Base
Class Method Details
.instance ⇒ instance
polyfill of singleton module
196 |
# File 'sig/collection/sources.rbs', line 196
def self.instance: () -> instance
|
Instance Method Details
#gem_sig_path(name, version) ⇒ [Gem::Specification, Pathname]?
42 43 44 |
# File 'lib/rbs/collection/sources/rubygems.rb', line 42 private def gem_sig_path(name, version) RBS::EnvironmentLoader.gem_sig_path(name, version) end |
#has?(name, version) ⇒ Boolean
13 14 15 |
# File 'lib/rbs/collection/sources/rubygems.rb', line 13 def has?(name, version) gem_sig_path(name, version) end |
#install(dest:, name:, version:, stdout:) ⇒ void
This method returns an undefined value.
23 24 25 26 27 |
# File 'lib/rbs/collection/sources/rubygems.rb', line 23 def install(dest:, name:, version:, stdout:) # Do nothing because stdlib RBS is available by default _, from = gem_sig_path(name, version) stdout.puts "Using #{name}:#{version} (#{from})" end |
#manifest_of(name, version) ⇒ manifest_entry?
29 30 31 32 33 34 |
# File 'lib/rbs/collection/sources/rubygems.rb', line 29 def manifest_of(name, version) _, sig_path = gem_sig_path(name, version) sig_path or raise manifest_path = sig_path.join('manifest.yaml') YAML.safe_load(manifest_path.read) if manifest_path.exist? end |
#to_lockfile ⇒ source_entry
36 37 38 39 40 |
# File 'lib/rbs/collection/sources/rubygems.rb', line 36 def to_lockfile { 'type' => 'rubygems', } end |
#versions(name) ⇒ Array[String]
17 18 19 20 21 |
# File 'lib/rbs/collection/sources/rubygems.rb', line 17 def versions(name) spec, _ = gem_sig_path(name, nil) spec or raise [spec.version.to_s] end |