/* * call-seq: * ios.closed? => true or false * * Returns <code>true</code> if <em>ios</em> is completely closed (for * duplex streams, both reader and writer), <code>false</code> * otherwise. * * f = File.new("testfile") * f.close #=> nil * f.closed? #=> true * f = IO.popen("/bin/sh","r+") * f.close_write #=> nil * f.closed? #=> false * f.close_read #=> nil * f.closed? #=> true */ static VALUE rb_io_closed(io) VALUE io; { OpenFile *fptr; fptr = RFILE(io)->fptr; rb_io_check_initialized(fptr); return (fptr->f || fptr->f2)?Qfalse:Qtrue; }