Class: Gemvault::GemReference::SpecificVersion
- Inherits:
-
GemReference
- Object
- GemReference
- Gemvault::GemReference::SpecificVersion
- Defined in:
- lib/gemvault/gem_reference/specific_version.rb
Overview
Matches one exact version of a named gem. version: is always a
Gem::Version (never nil, never a String) .parse validates and
constructs it before calling .new.
Instance Attribute Summary collapse
-
#version ⇒ Object
readonly
Returns the value of attribute version.
Instance Method Summary collapse
- #==(other) ⇒ Object (also: #eql?)
- #deconstruct_keys(keys) ⇒ Object
- #hash ⇒ Object
-
#initialize(name:, version:) ⇒ SpecificVersion
constructor
A new instance of SpecificVersion.
Constructor Details
#initialize(name:, version:) ⇒ SpecificVersion
Returns a new instance of SpecificVersion.
9 10 11 12 |
# File 'lib/gemvault/gem_reference/specific_version.rb', line 9 def initialize(name:, version:) super(name: name) @version = version end |
Instance Attribute Details
#version ⇒ Object (readonly)
Returns the value of attribute version.
7 8 9 |
# File 'lib/gemvault/gem_reference/specific_version.rb', line 7 def version @version end |
Instance Method Details
#==(other) ⇒ Object Also known as: eql?
14 15 16 |
# File 'lib/gemvault/gem_reference/specific_version.rb', line 14 def ==(other) super && version == other.version end |
#deconstruct_keys(keys) ⇒ Object
23 24 25 26 |
# File 'lib/gemvault/gem_reference/specific_version.rb', line 23 def deconstruct_keys(keys) data = { name: name, version: version } keys.nil? ? data : data.slice(*keys) end |
#hash ⇒ Object
19 20 21 |
# File 'lib/gemvault/gem_reference/specific_version.rb', line 19 def hash [self.class, name, version].hash end |