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