Class: Keisan::Functions::Sample

Inherits:
Keisan::Function show all
Defined in:
lib/keisan/functions/sample.rb

Instance Attribute Summary

Attributes inherited from Keisan::Function

#name

Instance Method Summary collapse

Constructor Details

#initializeSample

Returns a new instance of Sample.



4
5
6
# File 'lib/keisan/functions/sample.rb', line 4

def initialize
  @name = "sample"
end

Instance Method Details

#call(context, *args) ⇒ Object

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



10
11
12
13
14
15
16
17
# File 'lib/keisan/functions/sample.rb', line 10

def call(context, *args)
  case args.size
  when 1
    args.first.sample(random: context.random)
  else
    raise Keisan::Exceptions::InvalidFunctionError.new
  end
end