module NanoRpc::RawToNano

Public Instance Methods

to_nano() click to toggle source
# File lib/nano_rpc/numeric.rb, line 26
def to_nano
  ensure_valid_raw_amount
  (to_f / 10**RAW_FACTOR).round(RAW_PRECISION)
end

Private Instance Methods

ensure_valid_raw_amount() click to toggle source
# File lib/nano_rpc/numeric.rb, line 33
def ensure_valid_raw_amount
  raise NanoRpc::InvalidRawAmount unless valid_raw_amount?
end
valid_raw_amount?() click to toggle source

Ensure at least 10^23

# File lib/nano_rpc/numeric.rb, line 38
def valid_raw_amount?
  zero? || self >= 100_000_000_000_000_000_000_000
end