Class: Gem::Requirement

Inherits:
Object
  • Object
show all
Defined in:
lib/cocoapods-ve/ext/requirement_ext.rb

Overview

A Requirement is a set of one or more version restrictions. It supports a few (=, !=, >, <, >=, <=, ~>) different restriction operators.

See Gem::Version for a description on how versions and requirements work together in RubyGems.

Instance Method Summary collapse

Instance Method Details

#satisfied_by?(version) ⇒ Boolean

Returns:

  • (Boolean)


20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
# File 'lib/cocoapods-ve/ext/requirement_ext.rb', line 20

def satisfied_by? version
    if ENV['DISABLE_CONFLICT_CHECKER'] &&  (ENV['DISABLE_CONFLICT_CHECKER'].upcase == 'YES' || ENV['DISABLE_CONFLICT_CHECKER'].upcase == 'TRUE')
        raise ArgumentError, "Need a Gem::Version: #{version.inspect}" unless
          Gem::Version === version
        # #28965: syck has a bug with unquoted '=' YAML.loading as YAML::DefaultKey


        for req in requirements
            op = req[0]
            rv = req[1]

            if op == '=' && OPS["="].call(version,rv)
                puts "DISABLE_CONFLICT_CHECKER for #{self.to_s} and #{version.to_s}" unless requirements.all? { |op, rv| (OPS[op] || OPS["="]).call version, rv }
                return true
            end
        end
        requirements.all? { |op, rv| (OPS[op] || OPS["="]).call version, rv }
    else
        satisfied_by_t? version
    end
end

#satisfied_by_t?Object



19
# File 'lib/cocoapods-ve/ext/requirement_ext.rb', line 19

alias satisfied_by_t? satisfied_by?