Method: Numerals::Digits#value=

Defined in:
lib/numerals/digits.rb

#value=(v) ⇒ Object



53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
# File 'lib/numerals/digits.rb', line 53

def value=(v)
  raise "Invalid digits value" if v < 0
  if @radix < 37
    replace v.to_s(@radix).each_char.map{|c| c.to_i(@radix)}
  else
    if v == 0
      replace [0]
    else
      while v > 0
        v, r = v.divmod(@radix)
        unshift r
      end
    end
  end
end