Class: IntervalNotation::BasicIntervals::ClosedOpenInterval
- Inherits:
-
Object
- Object
- IntervalNotation::BasicIntervals::ClosedOpenInterval
show all
- Includes:
- ActslikeInterval
- Defined in:
- lib/interval_notation/basic_intervals.rb
Instance Method Summary
collapse
#deep_include_position?, #eql?, #finite?, #hash, included, #infinite?, #inspect, #length, #singular_point?, #to_finite?, #to_infinite?, #to_interval_set, #to_to_s
Constructor Details
Returns a new instance of ClosedOpenInterval.
117
118
119
120
121
122
|
# File 'lib/interval_notation/basic_intervals.rb', line 117
def initialize(from, to)
raise Error, "Interval [#{from};#{to}) can't be created" unless from < to
raise Error, "Infinite boundary should be open" unless from.to_f.finite?
@from = from
@to = to
end
|
Instance Method Details
#==(other) ⇒ Object
140
|
# File 'lib/interval_notation/basic_intervals.rb', line 140
def ==(other); other.is_a?(ClosedOpenInterval) && from == other.from && to == other.to; end
|
#from_finite? ⇒ Boolean
127
|
# File 'lib/interval_notation/basic_intervals.rb', line 127
def from_finite?; true; end
|
#from_infinite? ⇒ Boolean
128
|
# File 'lib/interval_notation/basic_intervals.rb', line 128
def from_infinite?; false; end
|
#from_to_s ⇒ Object
129
|
# File 'lib/interval_notation/basic_intervals.rb', line 129
def from_to_s; from; end
|
#include_from? ⇒ Boolean
124
|
# File 'lib/interval_notation/basic_intervals.rb', line 124
def include_from?; true; end
|
#include_position?(value) ⇒ Boolean
139
|
# File 'lib/interval_notation/basic_intervals.rb', line 139
def include_position?(value); from <= value && value < to; end
|
#include_to? ⇒ Boolean
125
|
# File 'lib/interval_notation/basic_intervals.rb', line 125
def include_to?; false; end
|
#integer_points ⇒ Object
145
|
# File 'lib/interval_notation/basic_intervals.rb', line 145
def integer_points; from.ceil .. (to - 1).ceil; end
|
#interval_boundaries(interval_index) ⇒ Object
141
142
143
144
|
# File 'lib/interval_notation/basic_intervals.rb', line 141
def interval_boundaries(interval_index)
[ BoundaryPoint.new(from, true, true, interval_index, true),
BoundaryPoint.new(to, false, false, interval_index, true) ]
end
|
#to_s ⇒ Object
123
|
# File 'lib/interval_notation/basic_intervals.rb', line 123
def to_s; "[#{from_to_s};#{to_to_s})"; end
|