class IO
Nested
Definitions
def self.Stream(io)
Convert any IO-like object into a buffered stream.
Signature
-
parameter
io
IO
The IO object to wrap.
-
returns
IO::Stream::Buffered
A buffered stream wrapper.
Implementation
def self.Stream(io)
if io.is_a?(Stream::Buffered)
io
else
Stream::Buffered.wrap(io)
end
end
def buffered?
Check if the IO is buffered.
Signature
-
returns
Boolean
True if the IO is buffered (not synchronized).
Implementation
def buffered?
return !self.sync
end
def buffered=(value)
Set the buffered state of the IO.
Signature
-
parameter
value
Boolean
True to enable buffering, false to disable.
Implementation
def buffered=(value)
self.sync = !value
end
def readable?
Check if the IO is readable.
Signature
-
returns
Boolean
True if the IO is readable (not closed).
Implementation
def readable?
# Do not call `eof?` here as it is not concurrency-safe and it can block.
!closed?
end