aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--random.c33
2 files changed, 29 insertions, 8 deletions
diff --git a/ChangeLog b/ChangeLog
index f81aa44770..8f6f506a3e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+Mon Apr 25 08:24:04 2011 Shota Fukumori <sorah@tubusu.net>
+
+ * random.c (rb_f_rand, random_s_rand): RDocs for them.
+
Mon Apr 25 07:18:00 2011 Kenta Murata <mrkn@mrkn.jp>
* random.c (random_s_rand, Init_Random): Random.rand should behave as
diff --git a/random.c b/random.c
index a5fedaaa0f..e711d283f1 100644
--- a/random.c
+++ b/random.c
@@ -1199,14 +1199,22 @@ random_equal(VALUE self, VALUE other)
* call-seq:
* rand(max=0) -> number
*
- * Converts <i>max</i> to an integer using max1 =
- * max<code>.to_i.abs</code>. If _max_ is +nil+ the result is zero, returns a
- * pseudorandom floating point number greater than or equal to 0.0 and
- * less than 1.0. Otherwise, returns a pseudorandom integer greater
- * than or equal to zero and less than max1. <code>Kernel::srand</code>
- * may be used to ensure repeatable sequences of random numbers between
- * different runs of the program. Ruby currently uses a modified
- * Mersenne Twister with a period of 2**19937-1.
+ *
+ * If <i>max</i> is +Range+, returns a pseudorandom number where
+ * range.member(number) == true.
+ *
+ * Or else converts _max_ to an integer using max1 =
+ * max<code>.to_i.abs</code>.
+ *
+ * Then if _max_ is +nil+ the result is zero, returns a pseudorandom floating
+ * point number greater than or equal to 0.0 and less than 1.0.
+ *
+ * Otherwise, returns a pseudorandom integer greater than or equal to zero and
+ * less than max1.
+ *
+ * <code>Kernel::srand</code> may be used to ensure repeatable sequences of
+ * random numbers between different runs of the program. Ruby currently uses
+ * a modified Mersenne Twister with a period of 2**19937-1.
*
* srand 1234 #=> 0
* [ rand, rand ] #=> [0.191519450163469, 0.49766366626136]
@@ -1235,6 +1243,15 @@ rb_f_rand(int argc, VALUE *argv, VALUE obj)
return r;
}
+/*
+ * call-seq:
+ * Random.rand -> float
+ * Random.rand(limit) -> number
+ *
+ * Alias of _Random::DEFAULT.rand_.
+ *
+ */
+
static VALUE
random_s_rand(int argc, VALUE *argv, VALUE obj)
{