Class: Gemvault::GemEntry

Inherits:
Object
  • Object
show all
Defined in:
lib/gemvault/gem_entry.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name:, version:, platform: "ruby", created_at: nil) ⇒ GemEntry

Returns a new instance of GemEntry.



5
6
7
8
9
10
# File 'lib/gemvault/gem_entry.rb', line 5

def initialize(name:, version:, platform: "ruby", created_at: nil)
  @name = name
  @version = version
  @platform = platform
  @created_at = created_at
end

Instance Attribute Details

#created_atObject (readonly)

Returns the value of attribute created_at.



3
4
5
# File 'lib/gemvault/gem_entry.rb', line 3

def created_at
  @created_at
end

#nameObject (readonly)

Returns the value of attribute name.



3
4
5
# File 'lib/gemvault/gem_entry.rb', line 3

def name
  @name
end

#platformObject (readonly)

Returns the value of attribute platform.



3
4
5
# File 'lib/gemvault/gem_entry.rb', line 3

def platform
  @platform
end

#versionObject (readonly)

Returns the value of attribute version.



3
4
5
# File 'lib/gemvault/gem_entry.rb', line 3

def version
  @version
end

Instance Method Details

#==(other) ⇒ Object Also known as: eql?



24
25
26
27
28
29
# File 'lib/gemvault/gem_entry.rb', line 24

def ==(other)
  other.is_a?(self.class) &&
    name == other.name &&
    version == other.version &&
    platform == other.platform
end

#filenameObject



16
17
18
# File 'lib/gemvault/gem_entry.rb', line 16

def filename
  "#{full_name}.gem"
end

#full_nameObject



12
13
14
# File 'lib/gemvault/gem_entry.rb', line 12

def full_name
  platform == "ruby" ? "#{name}-#{version}" : "#{name}-#{version}-#{platform}"
end

#hashObject



33
34
35
# File 'lib/gemvault/gem_entry.rb', line 33

def hash
  [name, version, platform].hash
end

#to_sObject



20
21
22
# File 'lib/gemvault/gem_entry.rb', line 20

def to_s
  platform == "ruby" ? "#{name}-#{version}" : "#{name}-#{version} (#{platform})"
end