summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorTomoyuki Sahara <[email protected]>2015-09-27 21:15:54 +0900
committerTomoyuki Sahara <[email protected]>2015-09-27 21:15:54 +0900
commit1d6b7f9bba247bef1da615d1c9f8d0bcc17456ea (patch)
tree082a6f0b90f340d3da99eaf69b536635589ddab4
parent6c4d39412f693301eca34daf7a413248839be404 (diff)
parentc26f998ed5976c453afc4ba68aa24aaa9d0c0d4e (diff)
downloadmruby-1d6b7f9bba247bef1da615d1c9f8d0bcc17456ea.tar.gz
mruby-1d6b7f9bba247bef1da615d1c9f8d0bcc17456ea.zip
Merge pull request #44 from takahashim/io-addstr
support IO#<<
-rw-r--r--mrblib/io.rb5
-rw-r--r--test/io.rb8
2 files changed, 13 insertions, 0 deletions
diff --git a/mrblib/io.rb b/mrblib/io.rb
index c838b96e5..30eb47404 100644
--- a/mrblib/io.rb
+++ b/mrblib/io.rb
@@ -108,6 +108,11 @@ class IO
raise IOError
end
+ def <<(str)
+ write(str)
+ self
+ end
+
def eof?
return true if @buf && @buf.size > 0
diff --git a/test/io.rb b/test/io.rb
index b828fef49..a5ce7e049 100644
--- a/test/io.rb
+++ b/test/io.rb
@@ -150,6 +150,14 @@ assert('IO#write', '15.2.20.5.20') do
true
end
+assert('IO#<<') do
+ io = IO.open(IO.sysopen($mrbtest_io_wfname))
+ io << "" << ""
+ assert_equal 0, io.pos
+ io.close
+ true
+end
+
assert('IO.for_fd') do
fd = IO.sysopen($mrbtest_io_rfname)
io = IO.for_fd(fd)