Class: JInterface::ArgRange

Inherits:
Object
  • Object
show all
Defined in:
lib/jinterface/arg_range.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(meth) ⇒ ArgRange

Returns a new instance of ArgRange.



4
5
6
# File 'lib/jinterface/arg_range.rb', line 4

def initialize(meth)
	reset(meth)
end

Instance Attribute Details

#minObject (readonly)

Returns the value of attribute min.



3
4
5
# File 'lib/jinterface/arg_range.rb', line 3

def min
  @min
end

Instance Method Details

#+(range) ⇒ Object



7
8
9
10
11
12
13
# File 'lib/jinterface/arg_range.rb', line 7

def +(range)
	if range.is_a? self.class
		@min = range.min if range.min < @min
		@max = range.max if range.max > @max
	end
	return self
end

#cover?(range) ⇒ Boolean

Returns:

  • (Boolean)


14
15
16
17
# File 'lib/jinterface/arg_range.rb', line 14

def cover?(range)
	return range.is_a?(self.class) && 
	@min <= range.min && @max >= range.max
end

#reset(meth) ⇒ Object



18
19
20
# File 'lib/jinterface/arg_range.rb', line 18

def reset(meth)
	@min, @max = getMethodRange(meth)
end

#to_sObject



21
22
23
# File 'lib/jinterface/arg_range.rb', line 21

def to_s()
	"(#{@min}, #{@max}#{@max == Float::INFINITY ? ']' : ')'}"
end