summaryrefslogtreecommitdiffhomepage
path: root/mrblib/io.rb
diff options
context:
space:
mode:
Diffstat (limited to 'mrblib/io.rb')
-rw-r--r--mrblib/io.rb13
1 files changed, 13 insertions, 0 deletions
diff --git a/mrblib/io.rb b/mrblib/io.rb
index 4d2fda5f3..1742fac32 100644
--- a/mrblib/io.rb
+++ b/mrblib/io.rb
@@ -41,6 +41,19 @@ class IO
end
end
+ def self.pipe(&block)
+ if block
+ begin
+ r, w = IO._pipe
+ yield r, w
+ ensure
+ r.close unless r.closed?
+ w.close unless w.closed?
+ end
+ else
+ IO._pipe
+ end
+ end
def self.read(path, length=nil, offset=nil, opt=nil)
if not opt.nil? # 4 arguments