diff options
| author | Tomoyuki Sahara <[email protected]> | 2015-11-24 16:49:34 +0900 |
|---|---|---|
| committer | Tomoyuki Sahara <[email protected]> | 2015-11-24 16:49:34 +0900 |
| commit | ca495944b6d74739e25b324fbcc7d0920fa1bded (patch) | |
| tree | e2378bf7375f94a377efcaba099eedbe85fbc762 /mrblib | |
| parent | c9a4091b83b06b20d8e9178ce748d5b101925a2e (diff) | |
| parent | a55accd736e13307f7e925af86751ca878be2058 (diff) | |
| download | mruby-ca495944b6d74739e25b324fbcc7d0920fa1bded.tar.gz mruby-ca495944b6d74739e25b324fbcc7d0920fa1bded.zip | |
Merge pull request #51 from ksss/io-pipe
Implement IO.pipe
Diffstat (limited to 'mrblib')
| -rw-r--r-- | mrblib/io.rb | 13 |
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 |
