class TheFox::Range::Lexer::Range
-
..
Public Class Methods
new(symbole)
click to toggle source
Calls superclass method
TheFox::Range::Lexer::Base::new
# File lib/thefox-ext/range/lexer/range.rb, line 7 def initialize(symbole) super(symbole) # puts '-> Range.initialize(%s)' % [symbole] @left_item = nil @right_item = nil @interval = nil end
Public Instance Methods
inspect()
click to toggle source
:nocov:
# File lib/thefox-ext/range/lexer/range.rb, line 17 def inspect() if !@left_item.nil? && !@right_item.nil? 'Range(#%s s=%s l=%s r=%s i=%s)' % [ @nonce, @symbole, @left_item.inspect, @right_item.inspect, @interval.inspect ] else 'Range(#%s %s)' % [@nonce, @symbole] end end
interval()
click to toggle source
# File lib/thefox-ext/range/lexer/range.rb, line 43 def interval() @interval end
interval=(interval)
click to toggle source
# File lib/thefox-ext/range/lexer/range.rb, line 46 def interval=(interval) @interval = interval.dup end
left_item=(left_item)
click to toggle source
:nocov:
# File lib/thefox-ext/range/lexer/range.rb, line 32 def left_item=(left_item) @left_item = left_item.dup end
resolve()
click to toggle source
# File lib/thefox-ext/range/lexer/range.rb, line 50 def resolve() # puts '-> %s.resolve()'.colorize(:red) % [inspect] if @left_item.is_a?(Number) && @right_item.is_a?(Number) r = ::Range.new(@left_item.resolve, @right_item.resolve) if @interval.is_a?(Interval) # puts '--> I=%s'.colorize(:red) % [@interval.inspect] r = r.step(@interval.resolve) end # puts '--> %s'.colorize(:red) % [r.inspect] r.to_a end end
right_item()
click to toggle source
# File lib/thefox-ext/range/lexer/range.rb, line 39 def right_item() @right_item end
right_item=(right_item)
click to toggle source
# File lib/thefox-ext/range/lexer/range.rb, line 36 def right_item=(right_item) @right_item = right_item.dup end