Class: Richcss::VersionKit::RequirementList

Inherits:
Object
  • Object
show all
Defined in:
lib/richcss/vendor/version_kit/lib/version_kit/requirement_list.rb

Instance Attribute Summary collapse

Object methods collapse

Instance Method Summary collapse

Constructor Details

#initialize(requirements = []) ⇒ RequirementList

Returns a new instance of RequirementList.

Parameters:



13
14
15
16
17
# File 'lib/richcss/vendor/version_kit/lib/version_kit/requirement_list.rb', line 13

def initialize(requirements = [])
  @requirements = Array(requirements).map do |requirement|
    normalize_requirement(requirement)
  end
end

Instance Attribute Details

#requirementsArray<Requirement> (readonly)

Returns:



7
8
9
# File 'lib/richcss/vendor/version_kit/lib/version_kit/requirement_list.rb', line 7

def requirements
  @requirements
end

Instance Method Details

#==(other) ⇒ Object



54
55
56
# File 'lib/richcss/vendor/version_kit/lib/version_kit/requirement_list.rb', line 54

def ==(other)
  requirements == other.requirements
end

#add_requirement(requirement) ⇒ void

This method returns an undefined value.



21
22
23
24
25
# File 'lib/richcss/vendor/version_kit/lib/version_kit/requirement_list.rb', line 21

def add_requirement(requirement)
  requirement = normalize_requirement(requirement)
  requirements << requirement
  requirements.uniq!
end

#hashFixnum

Returns The hash of the instance.

Returns:

  • (Fixnum)

    The hash of the instance.



50
51
52
# File 'lib/richcss/vendor/version_kit/lib/version_kit/requirement_list.rb', line 50

def hash
  to_s.hash
end

#satisfied_by?(candidate_version) ⇒ Bool

Returns:

  • (Bool)


29
30
31
32
33
# File 'lib/richcss/vendor/version_kit/lib/version_kit/requirement_list.rb', line 29

def satisfied_by?(candidate_version)
  requirements.all? do |requirement|
    requirement.satisfied_by?(candidate_version)
  end
end

#to_sString

Returns the string representation of this class. The string is equivalent, but not strictly equal, to the one used on initialization.

Returns:

  • (String)

    the string representation of this class. The string is equivalent, but not strictly equal, to the one used on initialization.



44
45
46
# File 'lib/richcss/vendor/version_kit/lib/version_kit/requirement_list.rb', line 44

def to_s
  requirements.map(&:to_s).join(', ')
end