Method: NumSeq#initialize
- Defined in:
- lib/num_seq.rb
#initialize(len, start_at = 0) ⇒ NumSeq
Returns a new instance of NumSeq.
33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 |
# File 'lib/num_seq.rb', line 33 def initialize(len, start_at = 0) if len < 0 then raise ArgumentError, "Length of a num_seq must be positive" end @@strict = false @undef_value = nil if 0 == len then @undef_inf = @undef_sup = start_at else @undef_inf = start_at - 1 @undef_sup = start_at + len end @elems = SequenceArray.new(len, @undef_inf + 1) if block_given? then ((@undef_inf+1)...@undef_sup).each_with_index do |n,i| @elems[n] = yield(n,i) end end end |