Class: Range
- Inherits:
-
Object
- Object
- Range
- Defined in:
- lib/HDLRuby/hruby_high.rb
Overview
Extends the range class to support to_low
Instance Method Summary collapse
-
#heach(&ruby_block) ⇒ Object
Iterates over the range as hardware.
-
#to_low ⇒ Object
Convert the first and last to HDLRuby::Low.
Instance Method Details
#heach(&ruby_block) ⇒ Object
Iterates over the range as hardware.
Returns an enumerator if no ruby block is given.
4991 4992 4993 4994 4995 4996 4997 4998 4999 |
# File 'lib/HDLRuby/hruby_high.rb', line 4991 def heach(&ruby_block) # No ruby block? Return an enumerator. return to_enum(:heach) unless ruby_block # Order the bounds to be able to iterate. first,last = self.first, self.last first,last = first > last ? [last,first] : [first,last] # Iterate. (first..last).each(&ruby_block) end |
#to_low ⇒ Object
Convert the first and last to HDLRuby::Low
4980 4981 4982 4983 4984 4985 4986 |
# File 'lib/HDLRuby/hruby_high.rb', line 4980 def to_low first = self.first first = first.respond_to?(:to_low) ? first.to_low : first last = self.last last = last.respond_to?(:to_low) ? last.to_low : last return (first..last) end |