randomfromrange 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (2) hide show
  1. data/lib/randomfromrange.rb +4 -1
  2. metadata +1 -1
@@ -5,7 +5,10 @@ Kernel.class_eval do
5
5
  if(v.respond_to? :to_i)
6
6
  return old_rand(v.to_i.abs)
7
7
  elsif(v.respond_to? :begin and v.respond_to? :end)
8
- return ((v.end-v.begin)*old_rand() + v.begin)
8
+ b = (v.begin.to_s =~ /^[0-9]+\.([0-9]+)$/) ? $1.to_s : ''
9
+ e = (v.end.to_s =~ /^[0-9]+\.([0-9]+)$/) ? $1.to_s : ''
10
+ precision = [b.length, e.length].max
11
+ return ((v.end-v.begin)*old_rand() + v.begin).round(precision)
9
12
  else
10
13
  raise TypeError, 'can\'t convert ' + v.class + ' into Integer'
11
14
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: randomfromrange
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors: