Y
Yossef Mendelssohn
Something came up as I was testing some ideas. I know Range objects
can indicate whether a specific object is an included element, but
something I thought might work didn't:
irb(main):001:0> (1..10).include?(2..6)
=> false
I know a simple case like this can be covered with (1..10).include? 2
and (1..10).include? 6 (range1 includes both range2.first and
range2.last), but doing it that way seems not entirely right,
especially when it comes to other cases. A big problem, as I see it,
would be trying to figure out what to do if the second range excludes
its end.
Maybe I'm just thinking about this completely wrong. Maybe I should
be using Sets or something. Knowing about intersects would be nice,
too.
Any thoughts?
can indicate whether a specific object is an included element, but
something I thought might work didn't:
irb(main):001:0> (1..10).include?(2..6)
=> false
I know a simple case like this can be covered with (1..10).include? 2
and (1..10).include? 6 (range1 includes both range2.first and
range2.last), but doing it that way seems not entirely right,
especially when it comes to other cases. A big problem, as I see it,
would be trying to figure out what to do if the second range excludes
its end.
Maybe I'm just thinking about this completely wrong. Maybe I should
be using Sets or something. Knowing about intersects would be nice,
too.
Any thoughts?