Class: NodeVersionRange
Instance Method Summary collapse
- #includes?(version_code) ⇒ Boolean
-
#initialize(str) ⇒ NodeVersionRange
constructor
A new instance of NodeVersionRange.
Constructor Details
#initialize(str) ⇒ NodeVersionRange
Returns a new instance of NodeVersionRange.
4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
# File 'ext/internal/node/nodes.rb', line 4 def initialize(str) if not str or str =~ /^\s*$/ then @inclusive_start = true @range_start = 0 @range_end = 1.0 / 0 @inclusive_end = true elsif str =~ / ([\[(]) (.*?), \s* (.*?) ([\])]) /x then @inclusive_start = $1 == '[' @range_start = $2.to_i @range_end = $3 == 'oo' ? (1.0 / 0) : $3.to_i @inclusive_end = $4 == ']' else raise "Invalid version range: #{str}" end end |
Instance Method Details
#includes?(version_code) ⇒ Boolean
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'ext/internal/node/nodes.rb', line 20 def includes?(version_code) if @inclusive_start then return false if version_code < @range_start else return false if version_code <= @range_start end if @inclusive_end then return false if version_code > @range_end else return false if version_code >= @range_end end return true end |