As far as I can see String#partition doesn't take a block (unlike
Enumerable#partition, where the docs were cut&pasted from, I guess), and
requires one argument:

    rb_define_method(rb_cString, "partition", rb_str_partition, 1);

Also, a typo in Hash#identical.


Index: hash.c =================================================================== RCS file: /src/ruby/hash.c,v retrieving revision 1.172 diff -p -u -r1.172 hash.c --- hash.c 25 Sep 2006 05:57:37 -0000 1.172 +++ hash.c 12 Oct 2006 10:50:52 -0000 @@ -1555,7 +1555,7 @@ static struct st_hash_type identhash = { * will consider exact same objects as same keys. * * h1 = { "a" => 100, "b" => 200, :c => "c" } - * h1["a"] #=> "a" + * h1["a"] #=> 100 * h1.identical * h1.identical? #=> true * h1["a"] #=> nil # different objects. Index: string.c =================================================================== RCS file: /src/ruby/string.c,v retrieving revision 1.284 diff -p -u -r1.284 string.c --- string.c 7 Oct 2006 15:55:17 -0000 1.284 +++ string.c 12 Oct 2006 10:50:53 -0000 @@ -4414,13 +4414,10 @@ rb_str_center(int argc, VALUE *argv, VAL /* * call-seq: - * str.partition {| obj | block } => [true_array, false_array] * str.partition(sep) => [head, sep, tail] * - * If a block is given, returns two arrays of true elements and false - * elements classified by the block evaluation. Otherwise, searches - * <i>sep</i> in the string and returns the part before it, the - * <i>sep</i>, and the part after it. If <i>sep</i> is not found, + * Searches the string for <i>sep</i> and returns the part before + * it, the <i>sep</i>, and the part after it. If <i>sep</i> is not found, * returns <i>str</i> and two empty strings. * * "hello".partition("l") #=> ["he", "l", "lo"]
-- Mauricio Fernandez - http://eigenclass.org - singular Ruby