Class: Gem::Source::Lock
| Relationships & Source Files | |
| Super Chains via Extension / Inclusion / Inheritance | |
| Class Chain: 
          self,
          ::Gem::Source
         | |
| Instance Chain: 
          self,
          ::Gem::Source,
          Comparable
         | |
| Inherits: | Gem::Source 
 | 
| Defined in: | lib/rubygems/source/lock.rb | 
Overview
A Lock source wraps an installed gem's source and sorts before other sources during dependency resolution. This allows RubyGems to prefer gems from dependency lock files.
Constant Summary
::Gem::Source - Inherited
Class Method Summary
- 
    
      .new(source)  ⇒ Lock 
    
    constructor
    Creates a new Locksource that wrapssourceand moves it earlier in the sort list.
::Gem::Source - Inherited
| .new | Creates a new ::Gem::Source which will use the index located at #uri. | 
Instance Attribute Summary
- 
    
      #wrapped  
    
    readonly
    The wrapped ::Gem::Source 
::Gem::Source - Inherited
| #update_cache? | Returns true when it is possible and safe to update the cache directory. | 
| #uri | The URI this source will fetch gems from. | 
Instance Method Summary
- 
    
      #fetch_spec(name_tuple)  
    
    Delegates to the wrapped source's fetch_spec method. 
- #<=>(other) Internal use only
- #==(other) Internal use only
- #hash Internal use only
- #uri Internal use only
::Gem::Source - Inherited
| #<=> | Sources are ordered by installation preference. | 
| #cache_dir | Returns the local directory to write #uri to. | 
| #download | Downloads  | 
| #fetch_spec | Fetches a specification for the given  | 
| #load_specs | Loads  | 
| #==, | |
| #api_uri | Use an SRV record on the host to look up the true endpoint for the index. | 
| #dependency_resolver_set | Returns a Set that can fetch specifications from this source. | 
| #eql? | Alias for #==. | 
| #hash, #pretty_print | |
Constructor Details
    .new(source)  ⇒ Lock 
  
Creates a new Lock source that wraps source and moves it earlier in the sort list.
# File 'lib/rubygems/source/lock.rb', line 18
def initialize source @wrapped = source end
Instance Attribute Details
#wrapped (readonly)
The wrapped ::Gem::Source
# File 'lib/rubygems/source/lock.rb', line 12
attr_reader :wrapped
Instance Method Details
#<=>(other)
#==(other)
# File 'lib/rubygems/source/lock.rb', line 33
def == other # :nodoc: 0 == (self <=> other) end
#fetch_spec(name_tuple)
Delegates to the wrapped source's fetch_spec method.
# File 'lib/rubygems/source/lock.rb', line 44
def fetch_spec name_tuple @wrapped.fetch_spec name_tuple end
#hash
# File 'lib/rubygems/source/lock.rb', line 37
def hash # :nodoc: @wrapped.hash ^ 3 end
#uri
# File 'lib/rubygems/source/lock.rb', line 48
def uri # :nodoc: @wrapped.uri end