Class: TheFox::Range::Lexer::Interval

Inherits:
Base
  • Object
show all
Defined in:
lib/thefox-ext/range/lexer/interval.rb

Overview

x-y/n

Instance Method Summary collapse

Methods inherited from Base

#add_child, #chain, #children, #dup, generate_nonce, #has_children, #has_parent_item, #instance_id, #instance_id=, keep_instance_id_on_dup, keep_nonce_on_dup, #next_item, #next_item=, #nonce, #nonce=, #org_prev_item, #org_prev_item=, #parent_item, #parent_item=, #prev_item, #prev_item=, #symbole

Constructor Details

#initializeInterval

Returns a new instance of Interval.



7
8
9
10
11
# File 'lib/thefox-ext/range/lexer/interval.rb', line 7

def initialize()
  super()
  # puts '-> Interval.initialize()'
  @number = nil
end

Instance Method Details

#inspectObject

:nocov:



14
15
16
17
18
19
20
# File 'lib/thefox-ext/range/lexer/interval.rb', line 14

def inspect()
  if @number.nil?
    'Interval()'
  else
    'Interval(%s)' % [@number.char]
  end
end

#numberObject

:nocov:



23
24
25
# File 'lib/thefox-ext/range/lexer/interval.rb', line 23

def number()
  @number
end

#number=(number) ⇒ Object



26
27
28
# File 'lib/thefox-ext/range/lexer/interval.rb', line 26

def number=(number)
  @number = number.dup
end

#resolveObject



30
31
32
33
34
35
36
37
# File 'lib/thefox-ext/range/lexer/interval.rb', line 30

def resolve()
  # puts '-> %s.resolve' % [inspect]
  if @number.nil?
    1
  else
    @number.resolve
  end
end