IO::StreamSourceIO

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