mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
21 lines
430 B
Ruby
21 lines
430 B
Ruby
|
# frozen_string_literal: true
|
||
|
|
||
|
class LessThanProc < Proc
|
||
|
attr_accessor :present
|
||
|
|
||
|
def self.with(present)
|
||
|
provided = Gem::Version.new(present.dup)
|
||
|
new do |required|
|
||
|
if required =~ /[=><~]/
|
||
|
!Gem::Requirement.new(required).satisfied_by?(provided)
|
||
|
else
|
||
|
provided < Gem::Version.new(required)
|
||
|
end
|
||
|
end.tap {|l| l.present = present }
|
||
|
end
|
||
|
|
||
|
def inspect
|
||
|
"\"=< #{present}\""
|
||
|
end
|
||
|
end
|