summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-03-15 08:43:45 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-03-15 08:43:45 +0000
commit01657b51f8ff145e425feb5fee39481be735cb4d (patch)
tree1ea728370f3783db08a63c0961b7b341966acd56
parentd188e1a8529927749c378f7c5f9e27464a686749 (diff)
* io.c (rb_io_print): RDoc update. a patch from Daniel Kelley
in [ruby-core:28643]. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26938 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog5
-rw-r--r--io.c4
-rw-r--r--test/ruby/test_io.rb17
3 files changed, 25 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 23712b0900..bcb131fa41 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Mon Mar 15 17:28:30 2010 Yukihiro Matsumoto <matz@ruby-lang.org>
+
+ * io.c (rb_io_print): RDoc update. a patch from Daniel Kelley
+ in [ruby-core:28643].
+
Mon Mar 15 14:06:07 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* random.c (next_state): no initialization here.
diff --git a/io.c b/io.c
index 6fd9f54d10..60afd6c3c7 100644
--- a/io.c
+++ b/io.c
@@ -5884,7 +5884,9 @@ rb_f_printf(int argc, VALUE *argv)
* ios.print(obj, ...) => nil
*
* Writes the given object(s) to <em>ios</em>. The stream must be
- * opened for writing. If the output record separator (<code>$\\</code>)
+ * opened for writing. If the output field separator (<code>$,</code>)
+ * is not <code>nil</code>, it will be inserted between each object.
+ * If the output record separator (<code>$\\</code>)
* is not <code>nil</code>, it will be appended to the output. If no
* arguments are given, prints <code>$_</code>. Objects that aren't
* strings will be converted by calling their <code>to_s</code> method.
diff --git a/test/ruby/test_io.rb b/test/ruby/test_io.rb
index a8860e1654..2da2ae95e6 100644
--- a/test/ruby/test_io.rb
+++ b/test/ruby/test_io.rb
@@ -1396,6 +1396,23 @@ End
assert_in_out_err(["-", t.path], "print while $<.gets", %w(foo bar baz), [])
end
+ def test_print_separators
+ $, = ':'
+ $\ = "\n"
+ r, w = IO.pipe
+ w.print('a')
+ w.print('a','b','c')
+ w.close
+ assert_equal("a\n", r.gets)
+ assert_equal("a:b:c\n", r.gets)
+ assert_nil r.gets
+ r.close
+
+ ensure
+ $, = nil
+ $\ = nil
+ end
+
def test_putc
pipe(proc do |w|
w.putc "A"