File: C:/Ruby27-x64/share/ri/2.7.0/system/IO/eof-i.ri
U:RDoc::AnyMethod[iI"eof:ETI"IO#eof;TF:publico:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [ I"?Returns true if <em>ios</em> is at end of file that means ;TI"%there are no more data to read. ;TI"AThe stream must be opened for reading or an IOError will be ;TI"raised.;To:RDoc::Markup::BlankLine o:RDoc::Markup::Verbatim; [I"f = File.new("testfile")
;TI"dummy = f.readlines
;TI"f.eof #=> true
;T:@format0o;
; [I"AIf <em>ios</em> is a stream such as pipe or socket, IO#eof? ;TI"=blocks until the other end sends some data or closes it.;T@o;; [I"r, w = IO.pipe
;TI"%Thread.new { sleep 1; w.close }
;TI".r.eof? #=> true after 1 second blocking
;TI"
;TI"r, w = IO.pipe
;TI"(Thread.new { sleep 1; w.puts "a" }
;TI"/r.eof? #=> false after 1 second blocking
;TI"
;TI"r, w = IO.pipe
;TI"r.eof? # blocks forever
;T;
0o;
; [I"@Note that IO#eof? reads data to the input byte buffer. So ;TI"FIO#sysread may not behave as you intend with IO#eof?, unless you ;TI"Dcall IO#rewind first (which is not available for some streams).;T:
@fileI" io.c;T:0@omit_headings_from_table_of_contents_below0I">ios.eof -> true or false
ios.eof? -> true or false;T0[ I"();T@,FI"IO;TcRDoc::NormalClass00