class Keisan::Functions::Rand

Public Class Methods

new() click to toggle source
# File lib/keisan/functions/rand.rb, line 4
def initialize
  @name = "rand"
  @arity = ::Range.new(1,2)
end

Public Instance Methods

call(context, *args) click to toggle source

Single argument: integer in range [0, max) Double argument: integer in range [min, max)

# File lib/keisan/functions/rand.rb, line 11
def call(context, *args)
  case args.size
  when 1
    context.random.rand(args.first)
  when 2
    context.random.rand(args.first...args.last)
  else
    raise Exceptions::InvalidFunctionError.new
  end
end